Browse Source

:art: 小商店相关代码修复优化

Binary Wang 3 years ago
parent
commit
982ad86bab
40 changed files with 594 additions and 521 deletions
  1. 6 6
      weixin-java-open/src/main/java/me/chanjar/weixin/open/api/WxOpenMinishopService.java
  2. 11 30
      weixin-java-open/src/main/java/me/chanjar/weixin/open/api/impl/WxOpenComponentServiceImpl.java
  3. 3 11
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopAddressInfo.java
  4. 1 0
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopAuditStatus.java
  5. 50 56
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopBaseInfo.java
  6. 4 4
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopBrand.java
  7. 2 0
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopBrandList.java
  8. 64 65
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopBusiLicense.java
  9. 2 0
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopCategories.java
  10. 2 0
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopCategory.java
  11. 1 0
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopDeliveryTemplate.java
  12. 15 6
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopDeliveryTemplateResult.java
  13. 49 54
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopIdcardInfo.java
  14. 72 77
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopMerchantinfo.java
  15. 3 14
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopNameInfo.java
  16. 42 47
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopOrganizationCodeInfo.java
  17. 1 1
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopPicFile.java
  18. 4 6
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopReturnInfo.java
  19. 2 0
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopShopCat.java
  20. 2 0
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopShopCatList.java
  21. 41 42
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopSuperAdministratorInfo.java
  22. 37 20
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCoupon.java
  23. 16 8
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponDiscountCondition.java
  24. 16 7
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponDiscountInfo.java
  25. 17 7
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponExtInfo.java
  26. 11 5
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponPromoteInfo.java
  27. 17 7
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponReceiveInfo.java
  28. 14 6
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponResponse.java
  29. 26 10
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponStock.java
  30. 14 6
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponStockInfo.java
  31. 17 7
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponValidInfo.java
  32. 1 0
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/goods/WxMinishopAddGoodsSkuData.java
  33. 1 0
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/goods/WxMinishopAddGoodsSpuData.java
  34. 1 0
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/goods/WxMinishopAddGoodsSpuResult.java
  35. 1 0
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/goods/WxMinishopDeliveryCompany.java
  36. 2 2
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/goods/WxMinishopGoodsSkuAttr.java
  37. 2 1
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/goods/WxMinishopSku.java
  38. 1 1
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/goods/WxMinishopSpu.java
  39. 19 9
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/limitdiscount/LimitDiscountGoods.java
  40. 4 6
      weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/limitdiscount/LimitDiscountSku.java

+ 6 - 6
weixin-java-open/src/main/java/me/chanjar/weixin/open/api/WxOpenMinishopService.java

@@ -11,12 +11,11 @@ import java.io.File;
  * add by kelven 2021-01-29
  */
 public interface WxOpenMinishopService {
-   String submitMerchantInfoUrl = "https://api.weixin.qq.com/product/register/submit_merchantinfo";
+  String submitMerchantInfoUrl = "https://api.weixin.qq.com/product/register/submit_merchantinfo";
 
-   String submitBasicInfoUrl = "https://api.weixin.qq.com/product/register/submit_basicinfo";
+  String submitBasicInfoUrl = "https://api.weixin.qq.com/product/register/submit_basicinfo";
 
-
-  public final static String UPLOAD_IMG_MINISHOP_FILE_URL = "https://api.weixin.qq.com/product/img/upload";
+  String UPLOAD_IMG_MINISHOP_FILE_URL = "https://api.weixin.qq.com/product/img/upload";
 
   String getCategoryUrl = "https://api.weixin.qq.com/product/category/get";
 
@@ -24,12 +23,13 @@ public interface WxOpenMinishopService {
 
   String getDeliveryUrl = "https://api.weixin.qq.com/product/delivery/get_freight_template";
 
-  /**获取店铺的商品分类*/
+  /**
+   * 获取店铺的商品分类
+   */
   String getShopCatUrl = "https://api.weixin.qq.com/product/store/get_shopcat";
 
 
   /**
-   *
    * @param appId
    * @param subjectType
    * @param busiLicense

+ 11 - 30
weixin-java-open/src/main/java/me/chanjar/weixin/open/api/impl/WxOpenComponentServiceImpl.java

@@ -1,17 +1,14 @@
 package me.chanjar.weixin.open.api.impl;
 
 import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult;
-import com.fasterxml.jackson.databind.util.JSONPObject;
-import com.google.gson.Gson;
 import com.google.gson.JsonArray;
 import com.google.gson.JsonObject;
 import com.google.gson.reflect.TypeToken;
 import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import me.chanjar.weixin.common.api.WxConsts;
-import me.chanjar.weixin.common.bean.result.WxMediaUploadResult;
-import me.chanjar.weixin.common.bean.result.WxMinishopImageUploadResult;
 import me.chanjar.weixin.common.bean.oauth2.WxOAuth2AccessToken;
+import me.chanjar.weixin.common.bean.result.WxMinishopImageUploadResult;
 import me.chanjar.weixin.common.error.WxError;
 import me.chanjar.weixin.common.error.WxErrorException;
 import me.chanjar.weixin.common.error.WxRuntimeException;
@@ -20,17 +17,8 @@ import me.chanjar.weixin.common.util.http.URIUtil;
 import me.chanjar.weixin.common.util.json.GsonParser;
 import me.chanjar.weixin.common.util.json.WxGsonBuilder;
 import me.chanjar.weixin.mp.api.WxMpService;
-import me.chanjar.weixin.open.api.WxOpenComponentService;
-import me.chanjar.weixin.open.api.WxOpenConfigStorage;
-import me.chanjar.weixin.open.api.WxOpenFastMaService;
-import me.chanjar.weixin.open.api.WxOpenMaService;
-import me.chanjar.weixin.open.api.WxOpenMpService;
-import me.chanjar.weixin.open.api.WxOpenService;
-import me.chanjar.weixin.open.bean.WxOpenAuthorizerAccessToken;
-import me.chanjar.weixin.open.bean.WxOpenComponentAccessToken;
-import me.chanjar.weixin.open.bean.WxOpenCreateResult;
-import me.chanjar.weixin.open.bean.WxOpenGetResult;
-import me.chanjar.weixin.open.bean.WxOpenMaCodeTemplate;
+import me.chanjar.weixin.open.api.*;
+import me.chanjar.weixin.open.bean.*;
 import me.chanjar.weixin.open.bean.auth.WxOpenAuthorizationInfo;
 import me.chanjar.weixin.open.bean.message.WxOpenXmlMessage;
 import me.chanjar.weixin.open.bean.minishop.*;
@@ -40,11 +28,6 @@ import me.chanjar.weixin.open.bean.minishop.goods.*;
 import me.chanjar.weixin.open.bean.minishop.limitdiscount.LimitDiscountGoods;
 import me.chanjar.weixin.open.bean.minishop.limitdiscount.LimitDiscountSku;
 import me.chanjar.weixin.open.bean.result.*;
-import me.chanjar.weixin.open.bean.result.WxOpenAuthorizerInfoResult;
-import me.chanjar.weixin.open.bean.result.WxOpenAuthorizerListResult;
-import me.chanjar.weixin.open.bean.result.WxOpenAuthorizerOptionResult;
-import me.chanjar.weixin.open.bean.result.WxOpenQueryAuthResult;
-import me.chanjar.weixin.open.bean.result.WxOpenResult;
 import me.chanjar.weixin.open.util.json.WxOpenGsonBuilder;
 import org.apache.commons.lang3.StringUtils;
 
@@ -519,7 +502,7 @@ public class WxOpenComponentServiceImpl implements WxOpenComponentService {
   }
 
   @Override
-  public void addToTemplate(long draftId,int templateType) throws WxErrorException {
+  public void addToTemplate(long draftId, int templateType) throws WxErrorException {
     JsonObject param = new JsonObject();
     param.addProperty("draft_id", draftId);
     param.addProperty("template_type", templateType);
@@ -657,7 +640,7 @@ public class WxOpenComponentServiceImpl implements WxOpenComponentService {
   public String checkAuditStatus(String appId, String wxName) throws WxErrorException {
     JsonObject jsonObject = new JsonObject();
     jsonObject.addProperty("wx_name", wxName);
-    String url = CHECK_SHOP_AUDITSTATUS_URL + "?access_token=" + getAuthorizerAccessToken(appId,  false);
+    String url = CHECK_SHOP_AUDITSTATUS_URL + "?access_token=" + getAuthorizerAccessToken(appId, false);
     String response = post(url, jsonObject.toString());
     log.info("CHECK_SHOP_AUDITSTATUS_URL: " + response);
     return response;
@@ -700,7 +683,7 @@ public class WxOpenComponentServiceImpl implements WxOpenComponentService {
 
   @Override
   public WxMinishopImageUploadResult uploadMinishopImagePicFile(String appId, Integer height, Integer width, File file) throws WxErrorException {
-    String url = WxOpenMinishopService.UPLOAD_IMG_MINISHOP_FILE_URL + "?access_token="+getAuthorizerAccessToken(appId, false)+"&height="+height+"&width="+width;
+    String url = WxOpenMinishopService.UPLOAD_IMG_MINISHOP_FILE_URL + "?access_token=" + getAuthorizerAccessToken(appId, false) + "&height=" + height + "&width=" + width;
     log.info("upload url: " + url);
 //    String response = (url, file);
     WxMinishopImageUploadResult result = getWxOpenService().uploadMinishopMediaFile(url, file);
@@ -1114,8 +1097,6 @@ public class WxOpenComponentServiceImpl implements WxOpenComponentService {
     jsonObject.addProperty("stock_num", stockNum);
 
 
-
-
     String response = getWxOpenService().post(url, jsonObject.toString());
 
     return WxOpenGsonBuilder.create().fromJson(response, WxOpenResult.class);
@@ -1155,18 +1136,18 @@ public class WxOpenComponentServiceImpl implements WxOpenComponentService {
 
       JsonArray jsonArray = respObj.get("limited_discount_list").getAsJsonArray();
       if (jsonArray != null && jsonArray.size() > 0) {
-        for (int i = 0; i < jsonArray.size(); i ++) {
+        for (int i = 0; i < jsonArray.size(); i++) {
           JsonObject goodsObj = jsonArray.get(i).getAsJsonObject();
           LimitDiscountGoods discountGoods = new LimitDiscountGoods();
           discountGoods.setTaskId(goodsObj.get("task_id").getAsLong());
           discountGoods.setStatus(goodsObj.get("status").getAsInt());
-          discountGoods.setStartTime(new Date(goodsObj.get("start_time").getAsLong()*1000));
-          discountGoods.setEndTime(new Date(goodsObj.get("end_time").getAsLong()*1000));
+          discountGoods.setStartTime(new Date(goodsObj.get("start_time").getAsLong() * 1000));
+          discountGoods.setEndTime(new Date(goodsObj.get("end_time").getAsLong() * 1000));
 
           List<LimitDiscountSku> skuList = new ArrayList<>();
           JsonArray skuArray = goodsObj.get("limited_discount_sku_list").getAsJsonArray();
           if (skuArray != null && skuArray.size() > 0) {
-            for (int j = 0; j < skuArray.size(); j ++) {
+            for (int j = 0; j < skuArray.size(); j++) {
               JsonObject skuObj = skuArray.get(i).getAsJsonObject();
               LimitDiscountSku sku = new LimitDiscountSku();
               sku.setSkuId(skuObj.get("sku_id").getAsLong());
@@ -1186,7 +1167,7 @@ public class WxOpenComponentServiceImpl implements WxOpenComponentService {
   }
 
   @Override
-  public WxOpenResult updateLimitDiscountStatus(String appId, Long taskId, Integer status) throws WxErrorException  {
+  public WxOpenResult updateLimitDiscountStatus(String appId, Long taskId, Integer status) throws WxErrorException {
     String url = API_MINISHOP_UPDATE_LIMIT_DICOUNT_STATUS_URL + "access_token=" + getAuthorizerAccessToken(appId, false);
     JsonObject jsonObject = new JsonObject();
     jsonObject.addProperty("task_id", taskId);

+ 3 - 11
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopAddressInfo.java

@@ -1,63 +1,55 @@
 package me.chanjar.weixin.open.bean.minishop;
 
 import com.google.gson.JsonObject;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
 
+/**
+ * 小商店地址信息
+ */
 @Data
-@ApiModel("小商店地址信息")
 public class MinishopAddressInfo implements Serializable {
   private static final long serialVersionUID = 1L;
 
   /**
    * 收货人姓名
    */
-  @ApiModelProperty("收货人姓名 必填")
   private String userName;
 
   /**
    * 邮政编码
    */
-  @ApiModelProperty("邮政编码 必填")
   private String postalCode;
 
   /**
    * 省份,格式:广东省 北京市
    */
-  @ApiModelProperty("省份,格式:广东省 北京市 必填")
   private String province;
 
   /**
    * 城市,格式:广州市
    */
-  @ApiModelProperty("城市,格式:广州市 必填")
   private String cityName;
 
   /**
    * 区,格式:海珠区
    */
-  @ApiModelProperty("区,格式:海珠区 必填")
   private String countyName;
 
   /**
    * 详细地址
    */
-  @ApiModelProperty("详细地址,必填")
   private String detailInfo;
 
   /**
    * 国家码
    */
-  @ApiModelProperty("国家码,选填")
   private String nationalCode;
 
   /**
    * 电话号码
    */
-  @ApiModelProperty("电话号码")
   private String telNumber;
 
   public JsonObject toJsonObject() {

+ 1 - 0
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopAuditStatus.java

@@ -7,6 +7,7 @@ import java.io.Serializable;
 
 @Data
 public class MinishopAuditStatus implements Serializable {
+  private static final long serialVersionUID = 106594659951047198L;
 
   private WxError wxError;
 

+ 50 - 56
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopBaseInfo.java

@@ -6,66 +6,60 @@ import lombok.Data;
 import java.io.Serializable;
 
 /**
- * <p>
- *
- * </p>
- *
  * @author luowentao
  * @since 2021-01-27
  */
 @Data
 public class MinishopBaseInfo implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    /**
-     * 微信小商店ID(自定)
-     */
-    private Long miniShopId;
-
-    /**
-     * 小程序ID
-     */
-    private String appId;
-
-    /**
-     * 1)小程序名称可以由中文、数字、英文、空格及部分特殊符号(“空格”、“-”、“+”、“&”、“.”)组成。长度在4-30个字符之间,一个中文字等于2个字符。
-2)公众号、小程序在微信公众平台上的名称是唯一的,且属于同一主体下,可以重名。
-3)不得与不同主体的公众号名称重名。
-     */
-    private String nickName;
-
-    /**
-     * 1)小程序简称可以从小程序名称中按顺序截取字符创建。长度在4-10个字符之间,一个中文字等于2个字符。
-2)小程序简称在微信公众平台是不唯一的,可以重名。但对于仿冒、侵权等恶意情况,平台仍会做出相关处罚。开发者也可通过侵权投诉维护自己的正当权益。
-3)小程序简称设置后,将在客户端任务栏向用户展示。开发者可以凭借此功能,更好地实现产品品牌价值和展示。目前暂不支持名称的其他功能。
-     */
-    private String abbr;
-
-    /**
-     * 介绍。请确认介绍内容不含国家相关法律法规禁止内容,介绍字数为4-120个字符,一个中文占2个字符。一个月内可申请5次修改。请提供可支持命名的材料
-     */
-    private String introduction;
-
-    /**
-     * 补充材料,传media id数组,当返回210047时必填
-     */
-    private String namingOtherStuff;
-
-    /**
-     * 邮箱
-     */
-    private String mail;
-
-    /**
-     * 退货地址
-     */
-    private Integer returnAddressId;
-
-    /**
-     * 公司地址
-     */
-    private Integer companyAddressId;
-
+  private static final long serialVersionUID = 1L;
+
+  /**
+   * 微信小商店ID(自定)
+   */
+  private Long miniShopId;
+
+  /**
+   * 小程序ID
+   */
+  private String appId;
+
+  /**
+   * 1)小程序名称可以由中文、数字、英文、空格及部分特殊符号(“空格”、“-”、“+”、“&”、“.”)组成。长度在4-30个字符之间,一个中文字等于2个字符。
+   * 2)公众号、小程序在微信公众平台上的名称是唯一的,且属于同一主体下,可以重名。
+   * 3)不得与不同主体的公众号名称重名。
+   */
+  private String nickName;
+
+  /**
+   * 1)小程序简称可以从小程序名称中按顺序截取字符创建。长度在4-10个字符之间,一个中文字等于2个字符。
+   * 2)小程序简称在微信公众平台是不唯一的,可以重名。但对于仿冒、侵权等恶意情况,平台仍会做出相关处罚。开发者也可通过侵权投诉维护自己的正当权益。
+   * 3)小程序简称设置后,将在客户端任务栏向用户展示。开发者可以凭借此功能,更好地实现产品品牌价值和展示。目前暂不支持名称的其他功能。
+   */
+  private String abbr;
+
+  /**
+   * 介绍。请确认介绍内容不含国家相关法律法规禁止内容,介绍字数为4-120个字符,一个中文占2个字符。一个月内可申请5次修改。请提供可支持命名的材料
+   */
+  private String introduction;
+
+  /**
+   * 补充材料,传media id数组,当返回210047时必填
+   */
+  private String namingOtherStuff;
+
+  /**
+   * 邮箱
+   */
+  private String mail;
+
+  /**
+   * 退货地址
+   */
+  private Integer returnAddressId;
+
+  /**
+   * 公司地址
+   */
+  private Integer companyAddressId;
 
 }

+ 4 - 4
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopBrand.java

@@ -1,13 +1,13 @@
 package me.chanjar.weixin.open.bean.minishop;
 
 import lombok.Data;
-import lombok.Getter;
-import lombok.Setter;
 
 import java.io.Serializable;
 
 @Data
 public class MinishopBrand implements Serializable {
+  private static final long serialVersionUID = -112023091374421283L;
+
   private Integer firstCatId;
 
   private Integer secondCatId;
@@ -15,9 +15,9 @@ public class MinishopBrand implements Serializable {
   private Integer thirdCatId;
 
   @Data
-  @Getter
-  @Setter
   public static class MinishopBrandInfo implements Serializable {
+    private static final long serialVersionUID = 5727133059972671186L;
+
     private Integer brandId;
     private String brandName;
   }

+ 2 - 0
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopBrandList.java

@@ -7,6 +7,8 @@ import java.util.List;
 
 @Data
 public class MinishopBrandList implements Serializable {
+  private static final long serialVersionUID = -8508031421949817741L;
+
   private Integer errcode;
 
   private String errmsg;

+ 64 - 65
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopBusiLicense.java

@@ -18,81 +18,80 @@ import java.io.Serializable;
 @Data
 @Accessors(chain = true)
 public class MinishopBusiLicense implements Serializable {
+  private static final long serialVersionUID = 1L;
 
-    private static final long serialVersionUID = 1L;
-
-    /**
-     * 营业执照相关信息
-     */
-    private Integer busiLicenseId;
+  /**
+   * 营业执照相关信息
+   */
+  private Integer busiLicenseId;
 
-    /**
-     * 营业执照类型 1:三证合一 2: 普通营业执照
-     */
-    private Integer licenseType;
+  /**
+   * 营业执照类型 1:三证合一 2: 普通营业执照
+   */
+  private Integer licenseType;
 
-    /**
-     * 营业执照图片
-     */
-    private MinishopPicFile picFile;
+  /**
+   * 营业执照图片
+   */
+  private MinishopPicFile picFile;
 
 
   /**
    * 营业执照图片url
    */
-    private String picFileUrl;
+  private String picFileUrl;
 
   /**
    * 请填写营业执照上的注册号/统一社会信用代码,
-须为15位数字或18位数字大写字母。
-示例值:123456789012345678 特殊规则:长度最小15个字节
-     */
-    private String registrationNum;
-
-    /**
-     * 1、请填写营业执照/登记证书的商家名称,2~110个字符,支持括号
-2、个体工商户/党政、机关及事业单位,不能以“公司”结尾。
-3、个体工商户,若营业执照上商户名称为空或为“无”,请填写"个体户+经营者姓名",
-如“个体户张三” 。示例值:腾讯科技有限公司
-     */
-    private String merchantName;
-
-    /**
-     * 请填写证件的经营者/法定代表人姓名。示例值:张三
-     */
-    private String legalRepresentative;
-
-    /**
-     * 注册地址
-     */
-    private String registeredAddrs;
-
-    /**
-     * 注册日期,格式:2014-01-01
-     */
-    private String startDate;
-
-    /**
-     * 结束有效期,格式:2014-01-01
-1、若证件有效期为长期,请填写:长期。
-2、结束时间需大于开始时间。
-3、有效期必须大于60天,即结束时间距当前时间需超过60天。
-     */
-    private String endDate;
-
-
-    public JsonObject toJsonObject() {
-      JsonObject jsonObject = new JsonObject();
-      jsonObject.addProperty("license_type", this.licenseType);
-      jsonObject.add("pic_file", picFile.toJsonObject());
-      jsonObject.addProperty("registration_num", registrationNum);
-      jsonObject.addProperty("merchant_name", merchantName);
-      jsonObject.addProperty("legal_representative", legalRepresentative);
-      if (registeredAddrs != null) {
-        jsonObject.addProperty("registered_addrs", registeredAddrs);
-      }
-      jsonObject.addProperty("start_date", startDate);
-      jsonObject.addProperty("end_date", endDate);
-      return jsonObject;
+   * 须为15位数字或18位数字大写字母。
+   * 示例值:123456789012345678 特殊规则:长度最小15个字节
+   */
+  private String registrationNum;
+
+  /**
+   * 1、请填写营业执照/登记证书的商家名称,2~110个字符,支持括号
+   * 2、个体工商户/党政、机关及事业单位,不能以“公司”结尾。
+   * 3、个体工商户,若营业执照上商户名称为空或为“无”,请填写"个体户+经营者姓名",
+   * 如“个体户张三” 。示例值:腾讯科技有限公司
+   */
+  private String merchantName;
+
+  /**
+   * 请填写证件的经营者/法定代表人姓名。示例值:张三
+   */
+  private String legalRepresentative;
+
+  /**
+   * 注册地址
+   */
+  private String registeredAddrs;
+
+  /**
+   * 注册日期,格式:2014-01-01
+   */
+  private String startDate;
+
+  /**
+   * 结束有效期,格式:2014-01-01
+   * 1、若证件有效期为长期,请填写:长期。
+   * 2、结束时间需大于开始时间。
+   * 3、有效期必须大于60天,即结束时间距当前时间需超过60天。
+   */
+  private String endDate;
+
+
+  public JsonObject toJsonObject() {
+    JsonObject jsonObject = new JsonObject();
+    jsonObject.addProperty("license_type", this.licenseType);
+    jsonObject.add("pic_file", picFile.toJsonObject());
+    jsonObject.addProperty("registration_num", registrationNum);
+    jsonObject.addProperty("merchant_name", merchantName);
+    jsonObject.addProperty("legal_representative", legalRepresentative);
+    if (registeredAddrs != null) {
+      jsonObject.addProperty("registered_addrs", registeredAddrs);
     }
+    jsonObject.addProperty("start_date", startDate);
+    jsonObject.addProperty("end_date", endDate);
+    return jsonObject;
+  }
 }

+ 2 - 0
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopCategories.java

@@ -7,6 +7,8 @@ import java.util.List;
 
 @Data
 public class MinishopCategories implements Serializable {
+  private static final long serialVersionUID = 7273326128218540329L;
+
   private Integer errcode;
 
   private String errmsg;

+ 2 - 0
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopCategory.java

@@ -6,6 +6,8 @@ import java.io.Serializable;
 
 @Data
 public class MinishopCategory implements Serializable {
+  private static final long serialVersionUID = -4843799448671123177L;
+
   private Integer catId;
 
   private Integer fCatId;

+ 1 - 0
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopDeliveryTemplate.java

@@ -6,6 +6,7 @@ import java.io.Serializable;
 
 @Data
 public class MinishopDeliveryTemplate implements Serializable {
+  private static final long serialVersionUID = 6408833494371482534L;
 
   public enum ValuationType {
     PACKAGE,

+ 15 - 6
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopDeliveryTemplateResult.java

@@ -1,21 +1,30 @@
 package me.chanjar.weixin.open.bean.minishop;
 
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
 import java.util.List;
 
+/**
+ * 小商店运费模版信息
+ *
+ * @author kelven.law@gmail.com
+ */
 @Data
-@ApiModel("小商店运费模版信息")
 public class MinishopDeliveryTemplateResult implements Serializable {
-  @ApiModelProperty(value = "错误码")
+  private static final long serialVersionUID = -3330428091957969299L;
+  /**
+   * 错误码
+   */
   private Integer errCode;
 
-  @ApiModelProperty(value = "错误信息")
+  /**
+   * 错误信息
+   */
   private String errMsg;
 
-  @ApiModelProperty(value = "运费模版列表")
+  /**
+   * 运费模版列表
+   */
   private List<MinishopDeliveryTemplate> templateList;
 }

+ 49 - 54
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopIdcardInfo.java

@@ -8,43 +8,38 @@ import lombok.experimental.Accessors;
 import java.io.Serializable;
 
 /**
- * <p>
- *
- * </p>
- *
  * @author luowentao
  * @since 2021-01-27
  */
 @Data
 @Accessors(chain = true)
 public class MinishopIdcardInfo implements Serializable {
+  private static final long serialVersionUID = 1L;
 
-    private static final long serialVersionUID = 1L;
-
-    /**
-     * 身份证信息Id
-     */
-    private Integer idCardInfoId;
+  /**
+   * 身份证信息Id
+   */
+  private Integer idCardInfoId;
 
-    /**
-     * 小程序ID
-     */
-    private String appId;
+  /**
+   * 小程序ID
+   */
+  private String appId;
 
-    /**
-     * 人像面照片media_id
-     */
-    private MinishopPicFile portraitPicFile;
+  /**
+   * 人像面照片media_id
+   */
+  private MinishopPicFile portraitPicFile;
 
   /**
    * 人像面照片url
    */
-    private String protraitPicFileUrl;
+  private String protraitPicFileUrl;
 
   /**
-     * 国徽面照片
-     */
-    private MinishopPicFile nationPicFile;
+   * 国徽面照片
+   */
+  private MinishopPicFile nationPicFile;
 
   /**
    * 国徽面照片url
@@ -52,37 +47,37 @@ public class MinishopIdcardInfo implements Serializable {
   private String nationPicFileUrl;
 
   /**
-     * 请填写经营者/法定代表人对应身份证的姓名,2~30个中文字符、英文字符、符号。
-     */
-    private String idCardName;
-
-    /**
-     * 请填写经营者/法定代表人对应身份证的号码
-     */
-    private String idCardNumber;
-
-    /**
-     * 注册日期,格式:2014-01-01
-     */
-    private String startDate;
-
-    /**
-     * 结束有效期,格式:2014-01-01
-1、若证件有效期为长期,请填写:长期。
-2、结束时间需大于开始时间。
-3、有效期必须大于60天,即结束时间距当前时间需超过60天。
-     */
-    private String endDate;
-
-    public JsonObject toJsonObject() {
-      JsonObject jsonObject = new JsonObject();
-      jsonObject.add("portrait_pic_file", portraitPicFile.toJsonObject());
-      jsonObject.add("nation_pic_file", nationPicFile.toJsonObject());
-      jsonObject.addProperty("id_card_name", idCardName);
-      jsonObject.addProperty("id_card_number", idCardNumber);
-      jsonObject.addProperty("start_date", startDate);
-      jsonObject.addProperty("end_date", endDate);
-      return jsonObject;
-    }
+   * 请填写经营者/法定代表人对应身份证的姓名,2~30个中文字符、英文字符、符号。
+   */
+  private String idCardName;
+
+  /**
+   * 请填写经营者/法定代表人对应身份证的号码
+   */
+  private String idCardNumber;
+
+  /**
+   * 注册日期,格式:2014-01-01
+   */
+  private String startDate;
+
+  /**
+   * 结束有效期,格式:2014-01-01
+   * 1、若证件有效期为长期,请填写:长期。
+   * 2、结束时间需大于开始时间。
+   * 3、有效期必须大于60天,即结束时间距当前时间需超过60天。
+   */
+  private String endDate;
+
+  public JsonObject toJsonObject() {
+    JsonObject jsonObject = new JsonObject();
+    jsonObject.add("portrait_pic_file", portraitPicFile.toJsonObject());
+    jsonObject.add("nation_pic_file", nationPicFile.toJsonObject());
+    jsonObject.addProperty("id_card_name", idCardName);
+    jsonObject.addProperty("id_card_number", idCardNumber);
+    jsonObject.addProperty("start_date", startDate);
+    jsonObject.addProperty("end_date", endDate);
+    return jsonObject;
+  }
 
 }

+ 72 - 77
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopMerchantinfo.java

@@ -8,89 +8,84 @@ import java.io.Serializable;
 import java.util.Date;
 
 /**
- * <p>
- *
- * </p>
- *
  * @author luowentao
  * @since 2021-01-27
  */
 @Data
 @Accessors(chain = true)
 public class MinishopMerchantinfo implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    /**
-     * 小商店认证ID
-     */
-    private Long merchantId;
-
-    /**
-     * 小商店APPID
-     */
-    private String appId;
-
-    /**
-     * 主体类型
-"4":个体工商户,营业执照上的主体类型一般为个体户、个体工商户、个体经营。
-"2":企业,营业执照上的主体类型一般为有限公司、有限责任公司。
-     */
-    private String subjectType;
-
-    /**
-     * 商户简称 UTF-8格式,中文占3个字节,即最多16个汉字长度。
-将在支付完成页向买家展示,需与商家的实际售卖商品相符 。示例值:腾讯
-     */
-    private String merchantShortname;
-
-    /**
-     * 补充描述
-     */
-    private String supplementaryDesc;
-
-    /**
-     * 营业执照/登记证书信息
-     */
-    private Integer busiLicenseId;
-
-    /**
-     * 组织机构代码证信息(非必填)
-     */
-    private Integer organizationCodeInfo;
-
-    /**
-     * 身份证信息
-     */
-    private Integer idCardInfo;
-
-    /**
-     * 超级管理员信息 请填写店铺的超级管理员信息。超级管理员需在开户后进行签约,
-并可接收日常重要管理信息和进行资金操作,请确定其为商户法定代表人或负责人。
-     */
-    private Integer superAdministratorInfoId;
-
-    /**
-     * 特殊资质 1、根据商户经营业务要求提供相关资质,详情查看《行业对应特殊资质》。
-2、请提供为“申请商家主体”所属的特殊资质,可授权使用总公司/分公司的特殊资 质;
-3、最多可上传5张照片,请填写通过图片上传接口预先上传图片生成好的MediaID 。
-     */
-    private Integer specialQualificationId;
-
-    /**
-     * 补充材料
-     */
-    private Integer supplementaryMaterialId;
-
-    /**
-     * 状态:0为审核中,1为已通过,-1为审批驳回
-     */
-    private Integer status;
-
-    /**
-     * 提交时间
-     */
-    private Date submitTime;
+  private static final long serialVersionUID = 1L;
+
+  /**
+   * 小商店认证ID
+   */
+  private Long merchantId;
+
+  /**
+   * 小商店APPID
+   */
+  private String appId;
+
+  /**
+   * 主体类型
+   * "4":个体工商户,营业执照上的主体类型一般为个体户、个体工商户、个体经营。
+   * "2":企业,营业执照上的主体类型一般为有限公司、有限责任公司。
+   */
+  private String subjectType;
+
+  /**
+   * 商户简称 UTF-8格式,中文占3个字节,即最多16个汉字长度。
+   * 将在支付完成页向买家展示,需与商家的实际售卖商品相符 。示例值:腾讯
+   */
+  private String merchantShortname;
+
+  /**
+   * 补充描述
+   */
+  private String supplementaryDesc;
+
+  /**
+   * 营业执照/登记证书信息
+   */
+  private Integer busiLicenseId;
+
+  /**
+   * 组织机构代码证信息(非必填)
+   */
+  private Integer organizationCodeInfo;
+
+  /**
+   * 身份证信息
+   */
+  private Integer idCardInfo;
+
+  /**
+   * 超级管理员信息 请填写店铺的超级管理员信息。超级管理员需在开户后进行签约,
+   * 并可接收日常重要管理信息和进行资金操作,请确定其为商户法定代表人或负责人。
+   */
+  private Integer superAdministratorInfoId;
+
+  /**
+   * 特殊资质 1、根据商户经营业务要求提供相关资质,详情查看《行业对应特殊资质》。
+   * 2、请提供为“申请商家主体”所属的特殊资质,可授权使用总公司/分公司的特殊资 质;
+   * 3、最多可上传5张照片,请填写通过图片上传接口预先上传图片生成好的MediaID 。
+   */
+  private Integer specialQualificationId;
+
+  /**
+   * 补充材料
+   */
+  private Integer supplementaryMaterialId;
+
+  /**
+   * 状态:0为审核中,1为已通过,-1为审批驳回
+   */
+  private Integer status;
+
+  /**
+   * 提交时间
+   */
+  private Date submitTime;
 
 
 }

+ 3 - 14
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopNameInfo.java

@@ -1,28 +1,23 @@
 package me.chanjar.weixin.open.bean.minishop;
 
 import com.google.gson.JsonObject;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
 import java.util.List;
 
+/**
+ * 小商店名称信息
+ */
 @Data
-@ApiModel("小商店名称信息")
 public class MinishopNameInfo implements Serializable {
-
   private static final long serialVersionUID = 1L;
 
-
   /**
    * 1)小程序名称可以由中文、数字、英文、空格及部分特殊符号(“空格”、“-”、“+”、“&”、“.”)组成。长度在4-30个字符之间,一个中文字等于2个字符。
    * 2)公众号、小程序在微信公众平台上的名称是唯一的,且属于同一主体下,可以重名。
    * 3)不得与不同主体的公众号名称重名。
    */
-  @ApiModelProperty(value = "1)小程序名称可以由中文、数字、英文、空格及部分特殊符号(“空格”、“-”、“+”、“&”、“.”)组成。长度在4-30个字符之间,一个中文字等于2个字符。\n" +
-    "   * 2)公众号、小程序在微信公众平台上的名称是唯一的,且属于同一主体下,可以重名。\n" +
-    "   * 3)不得与不同主体的公众号名称重名。", required = true)
   private String nickName;
 
 
@@ -31,22 +26,16 @@ public class MinishopNameInfo implements Serializable {
    * 2)小程序简称在微信公众平台是不唯一的,可以重名。但对于仿冒、侵权等恶意情况,平台仍会做出相关处罚。开发者也可通过侵权投诉维护自己的正当权益。
    * 3)小程序简称设置后,将在客户端任务栏向用户展示。开发者可以凭借此功能,更好地实现产品品牌价值和展示。目前暂不支持名称的其他功能。
    */
-  @ApiModelProperty(value = "   * 1)小程序简称可以从小程序名称中按顺序截取字符创建。长度在4-10个字符之间,一个中文字等于2个字符。\n" +
-    "   * 2)小程序简称在微信公众平台是不唯一的,可以重名。但对于仿冒、侵权等恶意情况,平台仍会做出相关处罚。开发者也可通过侵权投诉维护自己的正当权益。\n" +
-    "   * 3)小程序简称设置后,将在客户端任务栏向用户展示。开发者可以凭借此功能,更好地实现产品品牌价值和展示。目前暂不支持名称的其他功能。", required = true)
   private String abbr;
 
-
   /**
    * 请确认介绍内容不含国家相关法律法规禁止内容,介绍字数为4-120个字符,一个中文占2个字符。一个月内可申请5次修改。请提供可支持命名的材料
    */
-  @ApiModelProperty(value = "请确认介绍内容不含国家相关法律法规禁止内容,介绍字数为4-120个字符,一个中文占2个字符。一个月内可申请5次修改。请提供可支持命名的材料", required = true)
   private String introduction;
 
   /**
    * 补充材料,传media id数组,当返回210047时必填
    */
-  @ApiModelProperty(value = "补充材料,传media id数组,当返回210047时必填", required = false)
   private List<String> namingOtherStuff;
 
   public JsonObject toJsonObject() {

+ 42 - 47
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopOrganizationCodeInfo.java

@@ -2,61 +2,56 @@ package me.chanjar.weixin.open.bean.minishop;
 
 import com.google.gson.JsonObject;
 import lombok.Data;
-import lombok.experimental.Accessors;
 
 import java.io.Serializable;
 
 /**
- * <p>
- *
- * </p>
- *
  * @author luowentao
  * @since 2021-01-27
  */
 @Data
 public class MinishopOrganizationCodeInfo implements Serializable {
 
-    private static final long serialVersionUID = 1L;
-
-    private Integer organizationCodeInfoId;
-
-    /**
-     * 小程序ID
-     */
-    private String appId;
-
-    /**
-     * 组织机构代码证图片
-     */
-    private MinishopPicFile picFile;
-
-    /**
-     * 1、请填写组织机构代码证上的组织机构代码。
-2、可填写9或10位 数字\字母\连字符。示例值:12345679-A
-     */
-    private String organizationCode;
-
-    /**
-     * 注册日期,格式:2014-01-01
-     */
-    private String startDate;
-
-    /**
-     * 结束有效期,格式:2014-01-01
-1、若证件有效期为长期,请填写:长期。
-2、结束时间需大于开始时间。
-3、有效期必须大于60天,即结束时间距当前时间需超过60天。
-     */
-    private String endDate;
-
-
-    public JsonObject toJsonObject() {
-      JsonObject jsonObject = new JsonObject();
-      jsonObject.add("pic_file", picFile.toJsonObject());
-      jsonObject.addProperty("organization_code", organizationCode);
-      jsonObject.addProperty("start_date", startDate);
-      jsonObject.addProperty("end_date", endDate);
-      return jsonObject;
-    }
+  private static final long serialVersionUID = 1L;
+
+  private Integer organizationCodeInfoId;
+
+  /**
+   * 小程序ID
+   */
+  private String appId;
+
+  /**
+   * 组织机构代码证图片
+   */
+  private MinishopPicFile picFile;
+
+  /**
+   * 1、请填写组织机构代码证上的组织机构代码。
+   * 2、可填写9或10位 数字\字母\连字符。示例值:12345679-A
+   */
+  private String organizationCode;
+
+  /**
+   * 注册日期,格式:2014-01-01
+   */
+  private String startDate;
+
+  /**
+   * 结束有效期,格式:2014-01-01
+   * 1、若证件有效期为长期,请填写:长期。
+   * 2、结束时间需大于开始时间。
+   * 3、有效期必须大于60天,即结束时间距当前时间需超过60天。
+   */
+  private String endDate;
+
+
+  public JsonObject toJsonObject() {
+    JsonObject jsonObject = new JsonObject();
+    jsonObject.add("pic_file", picFile.toJsonObject());
+    jsonObject.addProperty("organization_code", organizationCode);
+    jsonObject.addProperty("start_date", startDate);
+    jsonObject.addProperty("end_date", endDate);
+    return jsonObject;
+  }
 }

+ 1 - 1
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopPicFile.java

@@ -7,7 +7,7 @@ import java.io.Serializable;
 
 @Data
 public class MinishopPicFile implements Serializable {
-
+  private static final long serialVersionUID = 6406252666763442010L;
 
   private String mediaId;
 

+ 4 - 6
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopReturnInfo.java

@@ -1,32 +1,30 @@
 package me.chanjar.weixin.open.bean.minishop;
 
 import com.google.gson.JsonObject;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
 
+/**
+ * 小商店退货信息
+ */
 @Data
-@ApiModel("小商店退货信息")
 public class MinishopReturnInfo implements Serializable {
+  private static final long serialVersionUID = -540507163550915549L;
 
   /**
    * 退货地址
    */
-  @ApiModelProperty(value = "退货地址 必填", required = true)
   private MinishopAddressInfo addressInfo;
 
   /**
    * 邮箱
    */
-  @ApiModelProperty(value = "邮箱 必填", required = true)
   private String email;
 
   /**
    * 公司地址
    */
-  @ApiModelProperty(value = "公司地址信息 必填", required = true)
   private MinishopAddressInfo companyAddress;
 
   public JsonObject toJsonObject() {

+ 2 - 0
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopShopCat.java

@@ -9,6 +9,8 @@ import java.io.Serializable;
  */
 @Data
 public class MinishopShopCat implements Serializable {
+  private static final long serialVersionUID = 4179473856929659641L;
+
   private Integer shopCatId;
 
   private String shopCatName;

+ 2 - 0
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopShopCatList.java

@@ -7,6 +7,8 @@ import java.util.List;
 
 @Data
 public class MinishopShopCatList implements Serializable {
+  private static final long serialVersionUID = 8718853679902050471L;
+
   private Integer errcode;
 
   private String errmsg;

+ 41 - 42
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/MinishopSuperAdministratorInfo.java

@@ -18,54 +18,53 @@ import java.io.Serializable;
 @Data
 @Accessors(chain = true)
 public class MinishopSuperAdministratorInfo implements Serializable {
+  private static final long serialVersionUID = 1L;
 
-    private static final long serialVersionUID = 1L;
+  /**
+   * 店铺管理员ID
+   */
+  private Integer superAdminInfoId;
 
-    /**
-     * 店铺管理员ID
-     */
-    private Integer superAdminInfoId;
+  /**
+   * 个体工商户/企业/党政、机关及事业单位/其他组织,可选择:65-法人/经营者、66- 负责人。
+   * (负责人:经商户授权办理微信支付业务的人员,授权范围包括但不限于签约,入驻过程需完成账户验证)。
+   * 示例值:65
+   */
+  private String type;
 
-    /**
-     * 个体工商户/企业/党政、机关及事业单位/其他组织,可选择:65-法人/经营者、66- 负责人。
-(负责人:经商户授权办理微信支付业务的人员,授权范围包括但不限于签约,入驻过程需完成账户验证)。
-示例值:65
-     */
-    private String type;
+  /**
+   * 1、若管理员类型为“法人”,则该姓名需与法人身份证姓名一致。
+   * 2、若管理员类型为“经办人”,则可填写实际经办人的姓名。
+   */
+  private String name;
 
-    /**
-     * 1、若管理员类型为“法人”,则该姓名需与法人身份证姓名一致。
-2、若管理员类型为“经办人”,则可填写实际经办人的姓名。
-     */
-    private String name;
+  /**
+   * 1、若管理员类型为法人,则该身份证号码需与法人身份证号码一致。若管理员类型为经办人,
+   * 则可填写实际经办人的身份证号码。
+   * 2、可传身份证、来往内地通行证、来往大陆通行证、护照等证件号码。
+   * 3、超级管理员签约时,校验微信号绑定的银行卡实名信息,是否与该证件号码一致。
+   */
+  private String idCardNumber;
 
-    /**
-     * 1、若管理员类型为法人,则该身份证号码需与法人身份证号码一致。若管理员类型为经办人,
-则可填写实际经办人的身份证号码。
-2、可传身份证、来往内地通行证、来往大陆通行证、护照等证件号码。
-3、超级管理员签约时,校验微信号绑定的银行卡实名信息,是否与该证件号码一致。
-     */
-    private String idCardNumber;
+  /**
+   * 请填写管理员的手机号,11位数字, 用于接收微信支付的重要管理信息及日常操作验证码 。
+   */
+  private String phone;
 
-    /**
-     * 请填写管理员的手机号,11位数字, 用于接收微信支付的重要管理信息及日常操作验证码 。
-     */
-    private String phone;
+  /**
+   * 1、用于接收微信支付的开户邮件及日常业务通知。
+   * 2、需要带@,遵循邮箱格式校验 。
+   */
+  private String mail;
 
-    /**
-     * 1、用于接收微信支付的开户邮件及日常业务通知。
-2、需要带@,遵循邮箱格式校验 。
-     */
-    private String mail;
 
-
-    public JsonObject toJsonObject() {
-      JsonObject jsonObject = new JsonObject();
-      jsonObject.addProperty("type", type);
-      jsonObject.addProperty("name", name);
-      jsonObject.addProperty("id_card_number", idCardNumber);
-      jsonObject.addProperty("phone", phone);
-      jsonObject.addProperty("mail", mail);
-      return jsonObject;
-    }
+  public JsonObject toJsonObject() {
+    JsonObject jsonObject = new JsonObject();
+    jsonObject.addProperty("type", type);
+    jsonObject.addProperty("name", name);
+    jsonObject.addProperty("id_card_number", idCardNumber);
+    jsonObject.addProperty("phone", phone);
+    jsonObject.addProperty("mail", mail);
+    return jsonObject;
+  }
 }

+ 37 - 20
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCoupon.java

@@ -1,48 +1,65 @@
 package me.chanjar.weixin.open.bean.minishop.coupon;
 
 import com.google.gson.JsonObject;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
 
 @Data
-@ApiModel("小商店优惠券信息")
 public class WxMinishopCoupon implements Serializable {
+  private static final long serialVersionUID = -6195756716727405785L;
 
-  //新增完成之后可以看到这个couponId
+  /**
+   * 新增完成之后可以看到这个couponId
+   */
   private Integer couponId;
 
-  //优惠券状态
+  /**
+   * 优惠券状态
+   */
   private Integer status;
 
-  @ApiModelProperty(value = "优惠券类型: 1 商品条件折券, discount_condition.product_ids, discount_condition.product_cnt, discount_info.discount_num 必填" +
-    "2 商品满减券, discount_condition.product_ids, discount_condition.product_price, discount_info.discount_fee 必填" +
-    "3 商品统一折扣券, discount_condition.product_ids, discount_info.discount_num必填" +
-    "4 商品直减券, 如果小于可用的商品中的最小价格会提醒(没有商品时超过50w提醒), discount_condition.product_ids, discount_fee 必填" +
-    "101 店铺条件折扣券, discount_condition.product_cnt, discount_info.discount_num必填" +
-    "102 店铺满减券, discount_condition.product_price, discount_info.discount_fee 必填" +
-    "103 店铺统一折扣券, discount_info.discount_num 必填" +
-    "104 店铺直减券, 如果小于可用的商品中的最小价格会提醒(没有商品时超过50w提醒), discount_fee 必填", required = true)
+  /**
+   * 优惠券类型:
+   * 1 商品条件折券, discount_condition.product_ids, discount_condition.product_cnt, discount_info.discount_num 必填;
+   * 2 商品满减券, discount_condition.product_ids, discount_condition.product_price, discount_info.discount_fee 必填;
+   * 3 商品统一折扣券, discount_condition.product_ids, discount_info.discount_num必填;
+   * 4 商品直减券, 如果小于可用的商品中的最小价格会提醒(没有商品时超过50w提醒), discount_condition.product_ids, discount_fee 必填;
+   * 101 店铺条件折扣券, discount_condition.product_cnt, discount_info.discount_num必填;
+   * 102 店铺满减券, discount_condition.product_price, discount_info.discount_fee 必填;
+   * 103 店铺统一折扣券, discount_info.discount_num 必填;
+   * 104 店铺直减券, 如果小于可用的商品中的最小价格会提醒(没有商品时超过50w提醒), discount_fee 必填
+   */
   private Integer type;
 
-  @ApiModelProperty(value = "优惠券名称", required = true)
+  /**
+   * 优惠券名称
+   */
   private String name;
 
-  @ApiModelProperty(value = "商品折扣券信息")
+  /**
+   * 商品折扣券信息
+   */
   private WxMinishopCouponDiscountInfo discountInfo;
 
-  @ApiModelProperty(value = "优惠券额外信息")
+  /**
+   * 优惠券额外信息
+   */
   private WxMinishopCouponExtInfo extInfo;
 
-  @ApiModelProperty(value = "推广渠道信息",required = true)
+  /**
+   * 推广渠道信息
+   */
   private WxMinishopCouponPromoteInfo promoteInfo;
 
-  @ApiModelProperty(value = "优惠券领取信息", required = true)
+  /**
+   * 优惠券领取信息
+   */
   private WxMinishopCouponReceiveInfo receiveInfo;
 
-  @ApiModelProperty(value = "优惠券有效期信息", required = true)
+  /**
+   * 优惠券有效期信息
+   */
   private WxMinishopCouponValidInfo validInfo;
 
   public JsonObject toJsonObject() {
@@ -64,7 +81,7 @@ public class WxMinishopCoupon implements Serializable {
       jsonObject.add("ext_info", extInfo.toJsonObject());
     }
 
-    if(promoteInfo != null) {
+    if (promoteInfo != null) {
       jsonObject.add("promote_info", promoteInfo.toJsonObject());
     }
 

+ 16 - 8
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponDiscountCondition.java

@@ -3,23 +3,31 @@ package me.chanjar.weixin.open.bean.minishop.coupon;
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
 import com.google.gson.JsonObject;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.io.Serializable;
 import java.util.List;
 
+/**
+ * 小商店商品折扣券详细信息
+ */
 @Data
-@ApiModel("小商店商品折扣券详细信息")
-public class WxMinishopCouponDiscountCondition {
-  @ApiModelProperty(value = "商品折扣券打折金额", required = false)
+public class WxMinishopCouponDiscountCondition implements Serializable {
+  private static final long serialVersionUID = 7020614663289497294L;
+
+  /**
+   * 商品折扣券打折金额
+   */
   private Integer productCnt;
 
-  @ApiModelProperty(value = "商品id,商品折扣券需填写", required = false)
+  /**
+   * 商品id,商品折扣券需填写
+   */
   private List<Integer> productIds;
 
-
-  @ApiModelProperty(value = "商品价格,满减券需填写", required = false)
+  /**
+   * 商品价格,满减券需填写
+   */
   private Integer productPrice;
 
   public JsonObject toJsonObject() {

+ 16 - 7
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponDiscountInfo.java

@@ -1,21 +1,30 @@
 package me.chanjar.weixin.open.bean.minishop.coupon;
 
 import com.google.gson.JsonObject;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.io.Serializable;
+
+/**
+ * 小商店商品折扣券信息
+ */
 @Data
-@ApiModel("小商店商品折扣券信息")
-public class WxMinishopCouponDiscountInfo {
+public class WxMinishopCouponDiscountInfo implements Serializable {
+  private static final long serialVersionUID = -2290048692838721473L;
 
-  @ApiModelProperty(value = "小商店商品折扣详情")
+  /**
+   * 小商店商品折扣详情
+   */
   private WxMinishopCouponDiscountCondition discountCondition;
 
-  @ApiModelProperty(value = "满减金额", required = true)
+  /**
+   * 满减金额
+   */
   private Integer discountFee;
 
-  @ApiModelProperty(value = "打折商品数量,满减券需填写")
+  /**
+   * 打折商品数量,满减券需填写
+   */
   private Integer discountNum;
 
   public JsonObject toJsonObject() {

+ 17 - 7
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponExtInfo.java

@@ -1,25 +1,35 @@
 package me.chanjar.weixin.open.bean.minishop.coupon;
 
 import com.google.gson.JsonObject;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
 
+/**
+ * 小商店优惠券的扩展信息
+ */
 @Data
-@ApiModel("小商店优惠券的扩展信息")
 public class WxMinishopCouponExtInfo implements Serializable {
-  @ApiModelProperty("备注信息")
+  private static final long serialVersionUID = 1923872821677126519L;
+
+  /**
+   * 备注信息
+   */
   private String notes;
 
-  @ApiModelProperty(value = "优惠券有效时间, valid_type=0时与valid_info.start_time一致, valid_type=1时商家自己填一个绝对开始时间", required = true)
+  /**
+   * 优惠券有效时间, valid_type=0时与valid_info.start_time一致, valid_type=1时商家自己填一个绝对开始时间
+   */
   private Long validTime;
 
-  @ApiModelProperty(value = "优惠券失效时间, valid_type=0时与valid_info.end_time一致, valid_type=1时商家自己填一个绝对结束时间", required = true)
+  /**
+   * 优惠券失效时间, valid_type=0时与valid_info.end_time一致, valid_type=1时商家自己填一个绝对结束时间
+   */
   private Long invalidTime;
 
-  @ApiModelProperty(value = "商品券可以填,领取后跳转")
+  /**
+   * 商品券可以填,领取后跳转
+   */
   private Long jumpProductId;
 
   public JsonObject toJsonObject() {

+ 11 - 5
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponPromoteInfo.java

@@ -1,19 +1,25 @@
 package me.chanjar.weixin.open.bean.minishop.coupon;
 
 import com.google.gson.JsonObject;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
 
+/**
+ * 小商店优惠券推广渠道
+ */
 @Data
-@ApiModel("小商店优惠券推广渠道")
 public class WxMinishopCouponPromoteInfo implements Serializable {
-  @ApiModelProperty(value = "用户自定义推广渠道", required = true)
+  private static final long serialVersionUID = 1928131284657756435L;
+
+  /**
+   * 用户自定义推广渠道
+   */
   private String customizeChannel;
 
-  @ApiModelProperty(value = "推广类型, 1:店铺内推广,2:自定义推广渠道", required = true)
+  /**
+   * 推广类型, 1:店铺内推广,2:自定义推广渠道
+   */
   private Integer promotionType;
 
   public JsonObject toJsonObject() {

+ 17 - 7
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponReceiveInfo.java

@@ -1,25 +1,35 @@
 package me.chanjar.weixin.open.bean.minishop.coupon;
 
 import com.google.gson.JsonObject;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
 
+/**
+ * 小商店优惠券领取信息
+ */
 @Data
-@ApiModel("小商店优惠券领取信息")
 public class WxMinishopCouponReceiveInfo implements Serializable {
-  @ApiModelProperty(value = "优惠券领用结束时间", required = true)
+  private static final long serialVersionUID = -3168216738144299136L;
+
+  /**
+   * 优惠券领用结束时间
+   */
   private Long endTime;
 
-  @ApiModelProperty(value = "是否限制一人使用", required = true)
+  /**
+   * 是否限制一人使用
+   */
   private Integer limitNumOnePerson;
 
-  @ApiModelProperty(value = "优惠券领用开始时间",required = true)
+  /**
+   * 优惠券领用开始时间
+   */
   private Long startTime;
 
-  @ApiModelProperty(value = "优惠券领用总数", required = true)
+  /**
+   * 优惠券领用总数
+   */
   private Integer totalNum;
 
   public JsonObject toJsonObject() {

+ 14 - 6
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponResponse.java

@@ -1,22 +1,30 @@
 package me.chanjar.weixin.open.bean.minishop.coupon;
 
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
 import java.util.List;
 
+/**
+ * 小商店优惠券请求回复数据信息
+ */
 @Data
-@ApiModel("小商店优惠券请求回复数据信息")
 public class WxMinishopCouponResponse implements Serializable {
-  @ApiModelProperty("错误码")
+  private static final long serialVersionUID = 1579611003616556089L;
+
+  /**
+   * 错误码
+   */
   private Integer errcode;
 
-  @ApiModelProperty("错误信息")
+  /**
+   * 错误信息
+   */
   private String errmsg;
 
-  @ApiModelProperty("优惠券信息")
+  /**
+   * 优惠券信息
+   */
   private List<WxMinishopCouponStock> coupons;
 
 

+ 26 - 10
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponStock.java

@@ -1,32 +1,48 @@
 package me.chanjar.weixin.open.bean.minishop.coupon;
 
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
 
-@ApiModel("小商店优惠券返回信息")
+/**
+ * 小商店优惠券返回信息
+ */
 @Data
 public class WxMinishopCouponStock implements Serializable {
-  @ApiModelProperty("优惠券ID")
+  private static final long serialVersionUID = -2022165905204478132L;
+
+  /**
+   * 优惠券ID
+   */
   private Integer couponId;
 
-  @ApiModelProperty("优惠券类型")
+  /**
+   * 优惠券类型
+   */
   private Integer type;
 
-  @ApiModelProperty("优惠券状态")
+  /**
+   * 优惠券状态
+   */
   private Integer status;
 
-  @ApiModelProperty("优惠券创建时间")
+  /**
+   * 优惠券创建时间
+   */
   private String createTime;
 
-  @ApiModelProperty("优惠券更新时间")
+  /**
+   * 优惠券更新时间
+   */
   private String updateTime;
 
-  @ApiModelProperty("优惠券详情信息")
+  /**
+   * 优惠券详情信息
+   */
   private WxMinishopCoupon couponInfo;
 
-  @ApiModelProperty("优惠券使用信息")
+  /**
+   * 优惠券使用信息
+   */
   private WxMinishopCouponStockInfo stockInfo;
 }

+ 14 - 6
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponStockInfo.java

@@ -1,20 +1,28 @@
 package me.chanjar.weixin.open.bean.minishop.coupon;
 
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
 
+/**
+ * 小商店优惠券消耗信息
+ */
 @Data
-@ApiModel("小商店优惠券消耗信息")
 public class WxMinishopCouponStockInfo implements Serializable {
-  @ApiModelProperty(value = "优惠券发放量")
+  private static final long serialVersionUID = 7690057714224606954L;
+
+  /**
+   * 优惠券发放量
+   */
   private Integer issuedNum;
 
-  @ApiModelProperty(value = "优惠券领用量")
+  /**
+   * 优惠券领用量
+   */
   private Integer receiveNum;
 
-  @ApiModelProperty(value = "优惠券已用量")
+  /**
+   * 优惠券已用量
+   */
   private Integer usedNum;
 }

+ 17 - 7
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/coupon/WxMinishopCouponValidInfo.java

@@ -1,25 +1,35 @@
 package me.chanjar.weixin.open.bean.minishop.coupon;
 
 import com.google.gson.JsonObject;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
 
+/**
+ * 小商店优惠券有效信息设置
+ */
 @Data
-@ApiModel("小商店优惠券有效信息设置")
 public class WxMinishopCouponValidInfo implements Serializable {
-  @ApiModelProperty(value = "优惠券有效期结束时间,若填了start必填")
+  private static final long serialVersionUID = -5228007620440565868L;
+
+  /**
+   * 优惠券有效期结束时间,若填了start必填
+   */
   private Long endTime;
 
-  @ApiModelProperty(value = "优惠券有效期开始时间,和valid_day_num二选一")
+  /**
+   * 优惠券有效期开始时间,和valid_day_num二选一
+   */
   private Long startTime;
 
-  @ApiModelProperty(value = "优惠券有效期天数,和start_time二选一", required = true)
+  /**
+   * 优惠券有效期天数,和start_time二选一
+   */
   private Integer validDayNum;
 
-  @ApiModelProperty(value = "优惠券有效期类型, 0: 指定时间范围生效; 1: 生效天数", required = true)
+  /**
+   * 优惠券有效期类型, 0: 指定时间范围生效; 1: 生效天数
+   */
   private Integer validType;
 
   public JsonObject toJsonObject() {

+ 1 - 0
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/goods/WxMinishopAddGoodsSkuData.java

@@ -6,6 +6,7 @@ import java.io.Serializable;
 
 @Data
 public class WxMinishopAddGoodsSkuData implements Serializable {
+  private static final long serialVersionUID = -2596988603027040989L;
   private Long skuId;
 
   private String createTime;

+ 1 - 0
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/goods/WxMinishopAddGoodsSpuData.java

@@ -6,6 +6,7 @@ import java.io.Serializable;
 
 @Data
 public class WxMinishopAddGoodsSpuData implements Serializable {
+  private static final long serialVersionUID = 2023708625713948192L;
   private Long productId;
 
   private String outProductId;

+ 1 - 0
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/goods/WxMinishopAddGoodsSpuResult.java

@@ -6,6 +6,7 @@ import java.io.Serializable;
 
 @Data
 public class WxMinishopAddGoodsSpuResult<T> implements Serializable {
+  private static final long serialVersionUID = 4323118714581265968L;
   private Integer errcode;
 
   private String errmsg;

+ 1 - 0
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/goods/WxMinishopDeliveryCompany.java

@@ -6,6 +6,7 @@ import java.io.Serializable;
 
 @Data
 public class WxMinishopDeliveryCompany implements Serializable {
+  private static final long serialVersionUID = 3736970376549639779L;
   private String deliveryId;
 
   private String deliveryName;

+ 2 - 2
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/goods/WxMinishopGoodsSkuAttr.java

@@ -1,18 +1,18 @@
 package me.chanjar.weixin.open.bean.minishop.goods;
 
 import com.google.gson.JsonObject;
-import io.swagger.annotations.ApiModel;
 import lombok.Data;
 
 import java.io.Serializable;
 
 @Data
 public class WxMinishopGoodsSkuAttr implements Serializable {
+  private static final long serialVersionUID = -7274443170526394680L;
+
   private String attrKey;
 
   private String attrValue;
 
-
   public JsonObject toJsonObject() {
     JsonObject jsonObject = new JsonObject();
     jsonObject.addProperty("attr_key", attrKey);

+ 2 - 1
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/goods/WxMinishopSku.java

@@ -5,11 +5,12 @@ import com.google.gson.JsonObject;
 import lombok.Data;
 
 import java.io.Serializable;
-import java.math.BigDecimal;
 import java.util.List;
 
 @Data
 public class WxMinishopSku implements Serializable {
+  private static final long serialVersionUID = 12373392723136246L;
+
   private Long productId;
 
   private String outProductId;

+ 1 - 1
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/goods/WxMinishopSpu.java

@@ -10,7 +10,7 @@ import java.util.List;
 
 @Data
 public class WxMinishopSpu implements Serializable {
-
+  private static final long serialVersionUID = 6689040014027161007L;
 
   private String outProductId;
 

+ 19 - 9
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/limitdiscount/LimitDiscountGoods.java

@@ -2,8 +2,6 @@ package me.chanjar.weixin.open.bean.minishop.limitdiscount;
 
 import com.google.gson.JsonArray;
 import com.google.gson.JsonObject;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
@@ -14,24 +12,36 @@ import java.util.List;
  * 小商店商品秒杀活动
  */
 @Data
-@ApiModel("小商店商品秒杀")
 public class LimitDiscountGoods implements Serializable {
-  @ApiModelProperty("小商店秒杀任务ID")
+  private static final long serialVersionUID = 718311474429148501L;
+  /**
+   * 小商店秒杀任务ID
+   */
   private Long taskId;
 
-  @ApiModelProperty("秒杀任务状态")
+  /**
+   * 秒杀任务状态
+   */
   private Integer status;
 
-  @ApiModelProperty("小商店商品ID,需要检查该商品在小商店的状态,如果不是上线状态可以提示客户需要先上架到小商店再进行处理")
+  /**
+   * 小商店商品ID,需要检查该商品在小商店的状态,如果不是上线状态可以提示客户需要先上架到小商店再进行处理
+   */
   private Long productId;
 
-  @ApiModelProperty("开始时间,发给小商店的时候需要转换为getTime")
+  /**
+   * 开始时间,发给小商店的时候需要转换为getTime
+   */
   private Date startTime;
 
-  @ApiModelProperty("结束时间,发给小商店的时候需要转换为getTime")
+  /**
+   * 结束时间,发给小商店的时候需要转换为getTime
+   */
   private Date endTime;
 
-  @ApiModelProperty("商品sku列表")
+  /**
+   * 商品sku列表
+   */
   private List<LimitDiscountSku> limitDiscountSkuList;
 
 

+ 4 - 6
weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/minishop/limitdiscount/LimitDiscountSku.java

@@ -1,8 +1,6 @@
 package me.chanjar.weixin.open.bean.minishop.limitdiscount;
 
 import com.google.gson.JsonObject;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
@@ -12,16 +10,16 @@ import java.math.BigDecimal;
  * 商品抢购活动sku信息
  */
 @Data
-@ApiModel("商品抢购活动sku")
+// 商品抢购活动sku
 public class LimitDiscountSku implements Serializable {
 
-  @ApiModelProperty("商品skuID")
+  // 商品skuID
   private Long skuId;
 
-  @ApiModelProperty("秒杀价格")
+  // 秒杀价格
   private BigDecimal salePrice;
 
-  @ApiModelProperty("商品秒杀库存")
+  // 商品秒杀库存
   private Integer saleStock;
 
   public JsonObject toJsonObject() {