diff --git a/mall-account/src/main/java/com/suisung/mall/account/controller/LoginController.java b/mall-account/src/main/java/com/suisung/mall/account/controller/LoginController.java index af43b6e7..ad765709 100644 --- a/mall-account/src/main/java/com/suisung/mall/account/controller/LoginController.java +++ b/mall-account/src/main/java/com/suisung/mall/account/controller/LoginController.java @@ -14,16 +14,21 @@ import com.suisung.mall.common.pojo.req.WxUserInfoReq; import com.suisung.mall.common.service.GeTuiPushService; import com.suisung.mall.common.service.impl.BaseControllerImpl; import com.suisung.mall.common.utils.I18nUtil; +import com.suisung.mall.common.utils.StringUtils; import com.suisung.mall.common.utils.UserInfoService; import com.suisung.mall.common.utils.phone.PhoneNumberUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; +import lombok.extern.log4j.Log4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.util.Pair; import org.springframework.web.bind.annotation.*; +import java.util.ArrayList; import java.util.HashMap; +import java.util.List; import java.util.Map; /** @@ -34,6 +39,7 @@ import java.util.Map; * @author Xinze * @since 2021-03-30 */ +@Log4j @Api(tags = "用户基本信息表") @RestController @RequestMapping("/mobile/account/login") @@ -72,7 +78,27 @@ public class LoginController extends BaseControllerImpl { clinkContent = ""; } - return geTuiPushService.pushMessageToCid(paramsJSON.getStr("cid"), title, paramsJSON.getStr("message"), clickType, clinkContent); + String message = paramsJSON.getStr("message") + System.currentTimeMillis(); + + JSONObject transmission = new JSONObject(); + transmission.put("title", "小发同城"); + transmission.put("message", message); + transmission.put("order", StringUtils.genLklOrderNo(8)); + + List cidList = new ArrayList<>(); + cidList.add("5932378d5a63fd1d028d47ac7a8f0c03"); + cidList.add("d4df466ea274314ec1025bafa0043f8b"); + + Pair pair1 = geTuiPushService.pushTransmissionToCid("5932378d5a63fd1d028d47ac7a8f0c03", transmission.toString()); + Pair pair2 = geTuiPushService.pushTransmissionToCid("d4df466ea274314ec1025bafa0043f8b", transmission.toString()); + Pair pair3 = geTuiPushService.pushMessageToCid("5932378d5a63fd1d028d47ac7a8f0c03", title, message, clickType, clinkContent); + Pair pair4 = geTuiPushService.pushMessageToCid("d4df466ea274314ec1025bafa0043f8b", title, message, clickType, clinkContent); + log.info("透传h5 {}" + pair1.getSecond()); + log.info("透传android {}" + pair2.getSecond()); + log.info("消息h5 {}" + pair3.getSecond()); + log.info("消息android {}" + pair4.getSecond()); + + return geTuiPushService.pushMessageToCid("d4df466ea274314ec1025bafa0043f8b", title, paramsJSON.getStr("message"), clickType, clinkContent); } @RequestMapping(value = "/testcase", method = RequestMethod.GET) diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/library/LibraryProduct.java b/mall-common/src/main/java/com/suisung/mall/common/modules/library/LibraryProduct.java new file mode 100644 index 00000000..0c6ee417 --- /dev/null +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/library/LibraryProduct.java @@ -0,0 +1,61 @@ +package com.suisung.mall.common.modules.library; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@TableName("library_product") +@ApiModel(value = "商品库的商品", description = "商品库的商品表") +public class LibraryProduct implements Serializable { + + @TableId(value = "id", type = IdType.INPUT) + @ApiModelProperty(value = "商品ID", position = 1, example = "1001") + private Long id; + + @ApiModelProperty(value = "商品名", position = 2, example = "小米12 Pro") + private String name; + + @ApiModelProperty(value = "条形码/Barcode", position = 3, example = "6923450657713") + private String barcode; + + @ApiModelProperty(value = "商品分类", position = 4, example = "手机") + private String category; + + @ApiModelProperty(value = "商品原价", position = 5, example = "4999.00") + private BigDecimal price; + + @ApiModelProperty(value = "商品关键字", position = 6, example = "智能手机,5G,骁龙8Gen1") + private String keywords; + + @ApiModelProperty(value = "封面图主图", position = 7, example = "/media/images/product/1001.jpg") + private String thumb; + + @ApiModelProperty(value = "排序值,越小越前面", position = 8, example = "50") + private Integer seq; + + @ApiModelProperty(value = "来源ID", position = 9, example = "vendor_001") + private String source; + + @ApiModelProperty(value = "状态 1-有效 2-无效", position = 10, example = "1") + private Integer status; + + @ApiModelProperty(value = "创建时间", position = 11, example = "2023-01-01 12:00:00") + private Date createdAt; + + @ApiModelProperty(value = "更新时间", position = 12, example = "2023-01-02 15:30:00") + private Date updatedAt; +} \ No newline at end of file diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/library/LibraryProductImage.java b/mall-common/src/main/java/com/suisung/mall/common/modules/library/LibraryProductImage.java new file mode 100644 index 00000000..e8346d41 --- /dev/null +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/library/LibraryProductImage.java @@ -0,0 +1,57 @@ +/* + * Copyright (c) 2025. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + * Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan. + * Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna. + * Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus. + * Vestibulum commodo. Ut rhoncus gravida arcu. + */ + +package com.suisung.mall.common.modules.library; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.Date; + +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@TableName("library_product_image") +@ApiModel(value = "商品库的商品图片", description = "商品库的商品图片表") +public class LibraryProductImage implements Serializable { + + @TableId(value = "id", type = IdType.INPUT) + @ApiModelProperty(value = "图片ID", position = 1, example = "5001") + private Long id; + + @ApiModelProperty(value = "商品ID", position = 2, example = "1001") + private Long productId; + + @ApiModelProperty(value = "图片地址", position = 3, + example = "/media/images/product/1001.jpg") + private String imageUrl; + + @ApiModelProperty(value = "是否主图 1-主图 0-副图", position = 4, example = "1") + private Boolean isMain; + + @ApiModelProperty(value = "排序值,越小越前面", position = 5, example = "10") + private Integer seq; + + @ApiModelProperty(value = "状态 1-有效 2-无效", position = 6, example = "1") + private Integer status; + + @ApiModelProperty(value = "创建时间", position = 7, example = "2023-01-01 12:30:00") + private Date createdAt; + + @ApiModelProperty(value = "更新时间", position = 8, example = "2023-01-01 13:15:00") + private Date updatedAt; +} \ No newline at end of file diff --git a/mall-common/src/main/java/com/suisung/mall/common/pojo/dto/LibraryProductDTO.java b/mall-common/src/main/java/com/suisung/mall/common/pojo/dto/LibraryProductDTO.java new file mode 100644 index 00000000..ecc9d5ad --- /dev/null +++ b/mall-common/src/main/java/com/suisung/mall/common/pojo/dto/LibraryProductDTO.java @@ -0,0 +1,74 @@ +/* + * Copyright (c) 2025. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + * Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan. + * Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna. + * Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus. + * Vestibulum commodo. Ut rhoncus gravida arcu. + */ + +package com.suisung.mall.common.pojo.dto; + +import io.swagger.annotations.ApiModel; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.List; + +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value = "商品库的商品信息", description = "商品库的商品信息") +public class LibraryProductDTO implements Serializable { + private Long id; + private String name; + private String barcode; + private String keywords; + private String thumb; + private BigDecimal price; + + private List product_image_list; + + /** + * 处理所有图片URL,添加域名前缀 + * + * @param imageDomain 图片域名 + */ + public void processImageUrls(String imageDomain) { + // 处理主图 + this.thumb = addDomainPrefix(imageDomain, this.thumb); + + // 处理图片列表 + if (this.product_image_list != null) { + for (ProductImage image : this.product_image_list) { + if (image != null) { + image.image_url = addDomainPrefix(imageDomain, image.getImage_url()); + } + } + } + } + + /** + * 为URL添加域名前缀(如果URL不是以http/https开头) + * + * @param imageDomain 图片域名 + * @param url 图片URL + * @return 添加域名前缀后的URL + */ + private String addDomainPrefix(String imageDomain, String url) { + if (url == null || url.startsWith("http://") || url.startsWith("https://")) { + return url; + } + return imageDomain + (url.startsWith("/") ? url : "/" + url); + } + + @Data + @EqualsAndHashCode(callSuper = false) + @ApiModel(value = "商品库的商品图片", description = "商品库的商品图片") + public static class ProductImage implements Serializable { + private Long product_id; + private String image_url; + private Integer is_main; + private Integer seq; + } +} diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/lakala/controller/mobile/LakalaController.java b/mall-shop/src/main/java/com/suisung/mall/shop/lakala/controller/mobile/LakalaController.java index 5c5b890b..555b3a42 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/lakala/controller/mobile/LakalaController.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/lakala/controller/mobile/LakalaController.java @@ -13,6 +13,7 @@ import com.suisung.mall.common.api.CommonResult; import com.suisung.mall.common.service.GeTuiPushService; import com.suisung.mall.common.service.impl.BaseControllerImpl; import com.suisung.mall.shop.lakala.service.LakalaApiService; +import com.suisung.mall.shop.library.service.LibraryProductService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.http.HttpStatus; @@ -24,6 +25,8 @@ import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.io.IOException; +import java.util.ArrayList; +import java.util.List; @Api(tags = "拉卡拉相关接口 - 前端控制器") @RestController @@ -36,15 +39,24 @@ public class LakalaController extends BaseControllerImpl { @Resource private GeTuiPushService geTuiPushService; + @Resource + private LibraryProductService libraryProductService; + @ApiOperation(value = "测试案例", notes = "测试案例") @RequestMapping(value = "/testcase", method = RequestMethod.POST) public Object testcase(@RequestBody JSONObject paramsJSON) { - return lakalaPayService.applyLedgerMerEc(paramsJSON.getStr("mchMobile")); +// return lakalaPayService.applyLedgerMerEc(paramsJSON.getStr("mchMobile")); // return lakalaPayService.LedgerMerEcDownload(975790666910121984L); // return geTuiPushService.pushMessageToSingleByCid("f9da7081a7951cff6d7f1d4e2d2f270b", "", "从 shop 发消息", "none", ""); // return ""; + + List tags = new ArrayList<>(); + tags.add("纯净水"); + tags.add("放心"); + return libraryProductService.matchLibraryProducts(paramsJSON.getStr("barcode"), paramsJSON.getStr("productName"), tags); + } @ApiOperation(value = "本地文件转base64", notes = "本地文件转base64") diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/library/mapper/LibraryProductImageMapper.java b/mall-shop/src/main/java/com/suisung/mall/shop/library/mapper/LibraryProductImageMapper.java new file mode 100644 index 00000000..7cc3d707 --- /dev/null +++ b/mall-shop/src/main/java/com/suisung/mall/shop/library/mapper/LibraryProductImageMapper.java @@ -0,0 +1,17 @@ +/* + * Copyright (c) 2025. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + * Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan. + * Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna. + * Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus. + * Vestibulum commodo. Ut rhoncus gravida arcu. + */ + +package com.suisung.mall.shop.library.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.suisung.mall.common.modules.library.LibraryProductImage; +import org.springframework.stereotype.Repository; + +@Repository +public interface LibraryProductImageMapper extends BaseMapper { +} diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/library/mapper/LibraryProductMapper.java b/mall-shop/src/main/java/com/suisung/mall/shop/library/mapper/LibraryProductMapper.java new file mode 100644 index 00000000..323331ed --- /dev/null +++ b/mall-shop/src/main/java/com/suisung/mall/shop/library/mapper/LibraryProductMapper.java @@ -0,0 +1,33 @@ +/* + * Copyright (c) 2025. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + * Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan. + * Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna. + * Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus. + * Vestibulum commodo. Ut rhoncus gravida arcu. + */ + +package com.suisung.mall.shop.library.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.suisung.mall.common.modules.library.LibraryProduct; +import com.suisung.mall.common.pojo.dto.LibraryProductDTO; +import org.apache.ibatis.annotations.Param; +import org.springframework.stereotype.Repository; + +import java.util.List; + +@Repository +public interface LibraryProductMapper extends BaseMapper { + + /** + * 匹配商品 + * 如果 barcode 匹配到数据,其他条件不会被匹配 + * 如果 barcode 未匹配到数据,则其他条件会正常去匹配 + * + * @param barcode 国标条形码 + * @param productName 商品名称 + * @param keywords 多个商品标签,商品关键字 + * @return + */ + List matchLibraryProducts(@Param("barcode") String barcode, @Param("productName") String productName, @Param("keywords") List keywords); +} diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/library/service/LibraryProductImageService.java b/mall-shop/src/main/java/com/suisung/mall/shop/library/service/LibraryProductImageService.java new file mode 100644 index 00000000..df7cfb46 --- /dev/null +++ b/mall-shop/src/main/java/com/suisung/mall/shop/library/service/LibraryProductImageService.java @@ -0,0 +1,12 @@ +/* + * Copyright (c) 2025. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + * Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan. + * Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna. + * Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus. + * Vestibulum commodo. Ut rhoncus gravida arcu. + */ + +package com.suisung.mall.shop.library.service; + +public interface LibraryProductImageService { +} diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/library/service/LibraryProductService.java b/mall-shop/src/main/java/com/suisung/mall/shop/library/service/LibraryProductService.java new file mode 100644 index 00000000..976f1dfd --- /dev/null +++ b/mall-shop/src/main/java/com/suisung/mall/shop/library/service/LibraryProductService.java @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2025. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + * Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan. + * Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna. + * Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus. + * Vestibulum commodo. Ut rhoncus gravida arcu. + */ + +package com.suisung.mall.shop.library.service; + +import com.suisung.mall.common.pojo.dto.LibraryProductDTO; + +import java.util.List; + +public interface LibraryProductService { + + /** + * 匹配商品 + * 如果 barcode 匹配到数据,其他条件不会被匹配 + * 如果 barcode 未匹配到数据,则其他条件会正常去匹配 + * + * @param barcode 国标条形码 + * @param productName 商品名称 + * @param keywords 多个商品标签,商品关键字 + * @return + */ + List matchLibraryProducts(String barcode, String productName, List keywords); +} diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/library/service/impl/LibraryProductImageServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/library/service/impl/LibraryProductImageServiceImpl.java new file mode 100644 index 00000000..901f426c --- /dev/null +++ b/mall-shop/src/main/java/com/suisung/mall/shop/library/service/impl/LibraryProductImageServiceImpl.java @@ -0,0 +1,19 @@ +/* + * Copyright (c) 2025. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + * Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan. + * Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna. + * Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus. + * Vestibulum commodo. Ut rhoncus gravida arcu. + */ + +package com.suisung.mall.shop.library.service.impl; + +import com.suisung.mall.common.modules.library.LibraryProductImage; +import com.suisung.mall.core.web.service.impl.BaseServiceImpl; +import com.suisung.mall.shop.library.mapper.LibraryProductImageMapper; +import com.suisung.mall.shop.library.service.LibraryProductImageService; +import org.springframework.stereotype.Service; + +@Service +public class LibraryProductImageServiceImpl extends BaseServiceImpl implements LibraryProductImageService { +} diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/library/service/impl/LibraryProductImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/library/service/impl/LibraryProductImpl.java new file mode 100644 index 00000000..ed1b64cb --- /dev/null +++ b/mall-shop/src/main/java/com/suisung/mall/shop/library/service/impl/LibraryProductImpl.java @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2025. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + * Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan. + * Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna. + * Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus. + * Vestibulum commodo. Ut rhoncus gravida arcu. + */ + +package com.suisung.mall.shop.library.service.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.collection.CollectionUtil; +import com.suisung.mall.common.modules.library.LibraryProduct; +import com.suisung.mall.common.pojo.dto.LibraryProductDTO; +import com.suisung.mall.core.web.service.impl.BaseServiceImpl; +import com.suisung.mall.shop.library.mapper.LibraryProductMapper; +import com.suisung.mall.shop.library.service.LibraryProductService; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Collections; +import java.util.List; + +@Service +public class LibraryProductImpl extends BaseServiceImpl implements LibraryProductService { + + @Resource + private LibraryProductMapper libraryProductMapper; + + @Value("${static_domain}") + private String staticDomain; + + /** + * 匹配商品 + * 如果 barcode 匹配到数据,其他条件不会被匹配 + * 如果 barcode 未匹配到数据,则其他条件会正常去匹配 + * + * @param barcode 国标条形码 + * @param productName 商品名称 + * @param keywords 多个商品标签,商品关键字 + * @return + */ + @Override + public List matchLibraryProducts(String barcode, String productName, List keywords) { + if (StringUtils.isAllBlank(barcode, productName) && CollUtil.isEmpty(keywords)) { + return Collections.emptyList(); + } + + List list = libraryProductMapper.matchLibraryProducts(barcode, productName, keywords); + if (CollectionUtil.isEmpty(list)) { + return Collections.emptyList(); + } + + // 使用 Stream 处理图片 URLs + list.forEach(product -> product.processImageUrls(staticDomain)); + return list; + + } +} diff --git a/mall-shop/src/main/resources/bootstrap-dev.yml b/mall-shop/src/main/resources/bootstrap-dev.yml index 4e18f545..c85e96aa 100644 --- a/mall-shop/src/main/resources/bootstrap-dev.yml +++ b/mall-shop/src/main/resources/bootstrap-dev.yml @@ -118,6 +118,7 @@ logging: springfox: error # 项目主域名 main_domain: @project.domain@ +static_domain: @project.static_domain@ # 个推 getui: # Url前缀 diff --git a/mall-shop/src/main/resources/bootstrap-local.yml b/mall-shop/src/main/resources/bootstrap-local.yml index 79fbf496..b3e68ecd 100644 --- a/mall-shop/src/main/resources/bootstrap-local.yml +++ b/mall-shop/src/main/resources/bootstrap-local.yml @@ -118,6 +118,7 @@ logging: springfox: error # 项目主域名 main_domain: @project.domain@ +static_domain: @project.static_domain@ # 个推 getui: # Url前缀 diff --git a/mall-shop/src/main/resources/bootstrap-prod.yml b/mall-shop/src/main/resources/bootstrap-prod.yml index ad6057cd..0dce6d2a 100644 --- a/mall-shop/src/main/resources/bootstrap-prod.yml +++ b/mall-shop/src/main/resources/bootstrap-prod.yml @@ -124,6 +124,7 @@ logging: springfox: error # 项目主域名 main_domain: @project.domain@ +static_domain: @project.static_domain@ # 个推 getui: # Url前缀 diff --git a/mall-shop/src/main/resources/bootstrap-test.yml b/mall-shop/src/main/resources/bootstrap-test.yml index 0ed88001..ce25199f 100644 --- a/mall-shop/src/main/resources/bootstrap-test.yml +++ b/mall-shop/src/main/resources/bootstrap-test.yml @@ -122,6 +122,7 @@ logging: springfox: error # 项目主域名 main_domain: @project.domain@ +static_domain: @project.static_domain@ # 个推 getui: # Url前缀 diff --git a/mall-shop/src/main/resources/bootstrap-uat.yml b/mall-shop/src/main/resources/bootstrap-uat.yml index 0ed88001..ce25199f 100644 --- a/mall-shop/src/main/resources/bootstrap-uat.yml +++ b/mall-shop/src/main/resources/bootstrap-uat.yml @@ -122,6 +122,7 @@ logging: springfox: error # 项目主域名 main_domain: @project.domain@ +static_domain: @project.static_domain@ # 个推 getui: # Url前缀 diff --git a/mall-shop/src/main/resources/mapper/library/LibraryProductMapper.xml b/mall-shop/src/main/resources/mapper/library/LibraryProductMapper.xml new file mode 100644 index 00000000..e5d9b78f --- /dev/null +++ b/mall-shop/src/main/resources/mapper/library/LibraryProductMapper.xml @@ -0,0 +1,149 @@ + + + + + + * + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/pom.xml b/pom.xml index f5f55dbf..7c28a006 100644 --- a/pom.xml +++ b/pom.xml @@ -346,6 +346,7 @@ D:/wwwroot/mall/public/static https://mall.gpxscs.cn + https://static.gpxscs.cn false