From d50a86c6c9aad98b70aa996662219156c9c371a9 Mon Sep 17 00:00:00 2001
From: peng <peng.com>
Date: 星期三, 15 十月 2025 10:22:26 +0800
Subject: [PATCH] 定制模块
---
framework/src/main/java/cn/lili/modules/order/order/entity/vo/OrderSimpleVO.java | 1
buyer-api/src/main/java/cn/lili/controller/payment/CashierController.java | 23 -------
framework/src/main/java/cn/lili/modules/order/cart/entity/vo/BindingTemplateParam.java | 43 ++++++++++++++
buyer-api/src/main/java/cn/lili/controller/order/CartController.java | 60 ++++++++++++++++++++
manager-api/src/main/java/cn/lili/controller/member/MemberEvaluationManagerController.java | 30 +++++++++-
framework/src/main/java/cn/lili/modules/order/order/mapper/OrderMapper.java | 1
framework/src/main/java/cn/lili/modules/order/order/entity/dto/OrderSearchParams.java | 3 +
7 files changed, 135 insertions(+), 26 deletions(-)
diff --git a/buyer-api/src/main/java/cn/lili/controller/order/CartController.java b/buyer-api/src/main/java/cn/lili/controller/order/CartController.java
index 70fc330..22b55d5 100644
--- a/buyer-api/src/main/java/cn/lili/controller/order/CartController.java
+++ b/buyer-api/src/main/java/cn/lili/controller/order/CartController.java
@@ -7,13 +7,21 @@
import cn.lili.common.exception.ServiceException;
import cn.lili.common.utils.StringUtils;
import cn.lili.common.vo.ResultMessage;
+import cn.lili.modules.lmk.domain.entity.UserCheckTemplate;
+import cn.lili.modules.lmk.domain.form.CustomizeTemplateForm;
+import cn.lili.modules.lmk.service.UserCheckTemplateService;
import cn.lili.modules.order.cart.entity.dto.BuyBackDTO;
import cn.lili.modules.order.cart.entity.dto.TradeDTO;
import cn.lili.modules.order.cart.entity.enums.CartTypeEnum;
+import cn.lili.modules.order.cart.entity.vo.BindingTemplateParam;
import cn.lili.modules.order.cart.entity.vo.TradeParams;
import cn.lili.modules.order.cart.service.CartService;
+import cn.lili.modules.order.order.entity.dos.Order;
import cn.lili.modules.order.order.entity.vo.ReceiptVO;
+import cn.lili.modules.order.order.service.OrderService;
import cn.lili.utils.COSUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -22,6 +30,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.MediaType;
+import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -29,6 +38,7 @@
import javax.validation.constraints.Min;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
+import java.util.ArrayList;
import java.util.List;
/**
@@ -51,7 +61,12 @@
@Autowired
private COSUtil cosUtil;
+ @Autowired
+ private OrderService orderService;
+
+ @Autowired
+ private UserCheckTemplateService userCheckTemplateService;
@ApiOperation(value = "鍚戣喘鐗╄溅涓坊鍔犱竴涓骇鍝�")
@PostMapping
@ApiImplicitParams({
@@ -352,4 +367,49 @@
throw e;
}
}
+
+ @PreventDuplicateSubmissions
+ @ApiOperation(value = "鏍规嵁浜ゆ槗缂栧彿杩涜妯℃澘鏁版嵁缁戝畾")
+ @PostMapping("/binding/template")
+ @Transactional(rollbackFor = Exception.class)
+ public ResultMessage<Object> bindingTemplate(@RequestBody BindingTemplateParam bindingTemplateParam) {
+ List<Order> byTradeSn = orderService.getByTradeSn(bindingTemplateParam.getSn());
+ if (byTradeSn.isEmpty()) {
+ log.info("褰撳墠璁㈠崟涓嶅瓨鍦▄}", bindingTemplateParam.getSn());
+ return ResultUtil.error(ResultCode.ORDER_ERROR);
+ }
+ if (byTradeSn.size() >1) {
+ log.info("褰撳墠璁㈠崟鏁伴噺寮傚父{}", bindingTemplateParam.getSn());
+ return ResultUtil.error(ResultCode.ORDER_ERROR);
+ }
+ Order order = byTradeSn.get(0);
+ String sn = order.getSn();
+ LambdaQueryWrapper<UserCheckTemplate> eq = Wrappers.<UserCheckTemplate>lambdaQuery().eq(UserCheckTemplate::getOrderSn, sn);
+ List<UserCheckTemplate> list = userCheckTemplateService.list(eq);
+ if (!list.isEmpty()) {
+ log.info("璁㈠崟涓嶈兘閲嶅缁戝畾妯℃澘{}",bindingTemplateParam.getSn());
+ return ResultUtil.error(ResultCode.ORDER_ERROR);
+ }
+ //瀹氬埗鍟嗗搧鐗规畩澶勭悊
+ if (StringUtils.isNotBlank(bindingTemplateParam.getTemplateId())){
+ List<CustomizeTemplateForm> templateForm = bindingTemplateParam.getTemplateForm();
+ List<UserCheckTemplate> customizeTemplateForms = new ArrayList<>();
+ for (CustomizeTemplateForm customizeTemplateForm : templateForm) {
+ UserCheckTemplate userCheckTemplate = new UserCheckTemplate();
+ userCheckTemplate.setContentType(customizeTemplateForm.getContentType());
+ userCheckTemplate.setChooseImg(bindingTemplateParam.getChooseImage());
+ userCheckTemplate.setChooseImgId(bindingTemplateParam.getChooseImageId());
+ userCheckTemplate.setTemplateName(bindingTemplateParam.getTemplateName());
+ userCheckTemplate.setTemplateId(bindingTemplateParam.getTemplateId());
+ userCheckTemplate.setOrderSn(sn);
+ userCheckTemplate.setSubId(customizeTemplateForm.getId());
+ userCheckTemplate.setSubName(customizeTemplateForm.getTemplateTitle());
+ userCheckTemplate.setContent(customizeTemplateForm.getValue());
+ customizeTemplateForms.add(userCheckTemplate);
+ }
+ userCheckTemplateService.saveBatch(customizeTemplateForms);
+
+ }
+ return ResultUtil.success();
+ }
}
diff --git a/buyer-api/src/main/java/cn/lili/controller/payment/CashierController.java b/buyer-api/src/main/java/cn/lili/controller/payment/CashierController.java
index 260219a..d6b500f 100644
--- a/buyer-api/src/main/java/cn/lili/controller/payment/CashierController.java
+++ b/buyer-api/src/main/java/cn/lili/controller/payment/CashierController.java
@@ -43,8 +43,6 @@
@Autowired
private CashierSupport cashierSupport;
- @Autowired
- private UserCheckTemplateService userCheckTemplateService;
@ApiImplicitParams({
@@ -55,27 +53,6 @@
@Transactional(rollbackFor = Exception.class)
public ResultMessage paymentParams(@Validated @RequestBody PayParam payParam) {
CashierParam cashierParam = cashierSupport.cashierParam(payParam);
- //瀹氬埗鍟嗗搧鐗规畩澶勭悊
- if (StringUtils.isNotBlank(payParam.getTemplateId())){
- List<CustomizeTemplateForm> templateForm = payParam.getTemplateForm();
- List<UserCheckTemplate> customizeTemplateForms = new ArrayList<>();
- String orderSns = cashierParam.getOrderSns();
- for (CustomizeTemplateForm customizeTemplateForm : templateForm) {
- UserCheckTemplate userCheckTemplate = new UserCheckTemplate();
- userCheckTemplate.setContentType(customizeTemplateForm.getContentType());
- userCheckTemplate.setChooseImg(payParam.getChooseImage());
- userCheckTemplate.setChooseImgId(payParam.getChooseImageId());
- userCheckTemplate.setTemplateName(payParam.getTemplateName());
- userCheckTemplate.setTemplateId(payParam.getTemplateId());
- userCheckTemplate.setOrderSn(orderSns);
- userCheckTemplate.setSubId(customizeTemplateForm.getId());
- userCheckTemplate.setSubName(customizeTemplateForm.getTemplateTitle());
- userCheckTemplate.setContent(customizeTemplateForm.getValue());
- customizeTemplateForms.add(userCheckTemplate);
- }
- userCheckTemplateService.saveBatch(customizeTemplateForms);
-
- }
return ResultUtil.data(cashierParam);
}
diff --git a/framework/src/main/java/cn/lili/modules/order/cart/entity/vo/BindingTemplateParam.java b/framework/src/main/java/cn/lili/modules/order/cart/entity/vo/BindingTemplateParam.java
new file mode 100644
index 0000000..3e7724d
--- /dev/null
+++ b/framework/src/main/java/cn/lili/modules/order/cart/entity/vo/BindingTemplateParam.java
@@ -0,0 +1,43 @@
+package cn.lili.modules.order.cart.entity.vo;
+
+import cn.lili.modules.lmk.domain.form.CustomizeTemplateForm;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.ToString;
+
+import javax.validation.constraints.NotNull;
+import java.util.List;
+
+/**
+ * 鏀粯鍙傛暟
+ *
+ * @author Chopper
+ * @since 2020/12/19 11:46
+ */
+@Data
+@ToString
+public class BindingTemplateParam {
+
+ @NotNull
+ @ApiModelProperty(value = "璁㈠崟鍙�")
+ private String sn;
+
+ @ApiModelProperty(value = "妯℃澘淇℃伅")
+ private List<CustomizeTemplateForm> templateForm;
+
+ @ApiModelProperty(value = "妯℃澘id")
+ private String templateId;
+
+ @ApiModelProperty(value = "妯℃澘鍚嶇О")
+ private String templateName;
+
+ @ApiModelProperty(value = "閫変腑鍥剧墖")
+ private String chooseImage;
+
+ @ApiModelProperty(value = "閫変腑鍥剧墖Id")
+ private String chooseImageId;
+
+
+
+
+}
diff --git a/framework/src/main/java/cn/lili/modules/order/order/entity/dto/OrderSearchParams.java b/framework/src/main/java/cn/lili/modules/order/order/entity/dto/OrderSearchParams.java
index 898cfaf..f45bea4 100644
--- a/framework/src/main/java/cn/lili/modules/order/order/entity/dto/OrderSearchParams.java
+++ b/framework/src/main/java/cn/lili/modules/order/order/entity/dto/OrderSearchParams.java
@@ -119,6 +119,8 @@
private String couponFlag;
+ private String customizeFlag;
+
private String storeSelectId;
public <T> QueryWrapper<T> queryWrapper() {
@@ -189,6 +191,7 @@
wrapper.eq(CharSequenceUtil.isNotEmpty(commentStatus), "oi.comment_status", commentStatus);
wrapper.eq(CharSequenceUtil.isNotEmpty(couponFlag),"o.coupon_flag", couponFlag);
+ wrapper.eq(CharSequenceUtil.isNotEmpty(customizeFlag),"o.customize_flag", customizeFlag);
//鎸夋爣绛炬煡璇�
if (CharSequenceUtil.isNotEmpty(tag)) {
diff --git a/framework/src/main/java/cn/lili/modules/order/order/entity/vo/OrderSimpleVO.java b/framework/src/main/java/cn/lili/modules/order/order/entity/vo/OrderSimpleVO.java
index aa439c6..9dc4e7f 100644
--- a/framework/src/main/java/cn/lili/modules/order/order/entity/vo/OrderSimpleVO.java
+++ b/framework/src/main/java/cn/lili/modules/order/order/entity/vo/OrderSimpleVO.java
@@ -160,6 +160,7 @@
private String consigneeName;
private String consigneeMobile;
private String modifyAddressFlag;
+ private String customizeFlag;
private String memberId;
diff --git a/framework/src/main/java/cn/lili/modules/order/order/mapper/OrderMapper.java b/framework/src/main/java/cn/lili/modules/order/order/mapper/OrderMapper.java
index 59d35b1..cf6f6d1 100644
--- a/framework/src/main/java/cn/lili/modules/order/order/mapper/OrderMapper.java
+++ b/framework/src/main/java/cn/lili/modules/order/order/mapper/OrderMapper.java
@@ -93,6 +93,7 @@
"o.consignee_mobile AS consigneeMobile," +
"o.member_id AS memberId," +
"m.nick_name AS nickName," +
+ "o.customize_flag AS customizeFlag," +
"o.modify_address_flag AS modifyAddressFlag,"+
" GROUP_CONCAT(oi.goods_id) as group_goods_id," +
" GROUP_CONCAT(oi.sku_id) as group_sku_id," +
diff --git a/manager-api/src/main/java/cn/lili/controller/member/MemberEvaluationManagerController.java b/manager-api/src/main/java/cn/lili/controller/member/MemberEvaluationManagerController.java
index 213706a..b3d3230 100644
--- a/manager-api/src/main/java/cn/lili/controller/member/MemberEvaluationManagerController.java
+++ b/manager-api/src/main/java/cn/lili/controller/member/MemberEvaluationManagerController.java
@@ -2,12 +2,14 @@
import cn.lili.common.aop.annotation.PreventDuplicateSubmissions;
import cn.lili.common.enums.ResultUtil;
+import cn.lili.common.utils.StringUtils;
import cn.lili.common.vo.PageVO;
import cn.lili.common.vo.ResultMessage;
import cn.lili.modules.member.entity.dto.EvaluationQueryParams;
import cn.lili.modules.member.entity.vo.MemberEvaluationListVO;
import cn.lili.modules.member.entity.vo.MemberEvaluationVO;
import cn.lili.modules.member.service.MemberEvaluationService;
+import cn.lili.utils.COSUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@@ -17,6 +19,8 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotNull;
+import java.util.ArrayList;
+import java.util.List;
/**
* 绠$悊绔�,浼氬憳鍟嗗搧璇勪环鎺ュ彛
@@ -30,14 +34,34 @@
public class MemberEvaluationManagerController {
@Autowired
private MemberEvaluationService memberEvaluationService;
-
+ @Autowired
+ private COSUtil cosUtil;
@PreventDuplicateSubmissions
@ApiOperation(value = "閫氳繃id鑾峰彇璇勮")
@ApiImplicitParam(name = "id", value = "璇勪环ID", required = true, dataType = "String", paramType = "path")
@GetMapping(value = "/get/{id}")
public ResultMessage<MemberEvaluationVO> get(@PathVariable String id) {
-
- return ResultUtil.data(memberEvaluationService.queryById(id));
+ MemberEvaluationVO t = memberEvaluationService.queryById(id);
+ String images = t.getImages();
+ if (StringUtils.isNotBlank(images)) {
+ String[] split = images.split(",");
+ List<String> imgList = new ArrayList<>(split.length);
+ for (String s : split) {
+ if (StringUtils.isNotBlank(s)&&!s.contains("http")) {
+ imgList.add(cosUtil.getPreviewUrl(s));
+ }
+ }
+ t.setImages(String.join(",", imgList));
+ }
+ String goodsImage = t.getGoodsImage();
+ if (StringUtils.isNotBlank(goodsImage)&&!goodsImage.contains("http")) {
+ t.setGoodsImage(cosUtil.getPreviewUrl(goodsImage));
+ }
+ String memberProfile = t.getMemberProfile();
+ if (StringUtils.isNotBlank(memberProfile)&&!memberProfile.contains("http")) {
+ t.setMemberProfile(cosUtil.getPreviewUrl(memberProfile));
+ }
+ return ResultUtil.data(t);
}
@ApiOperation(value = "鑾峰彇璇勪环鍒嗛〉")
--
Gitblit v1.8.0