From 4e5c47ee19caf98810b4ee50661fc141c4d7478f Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期五, 28 三月 2025 08:51:19 +0800
Subject: [PATCH] fix: 11
---
src/main/java/com/mzl/flower/config/ResourceServerConfig.java | 1
src/main/java/com/mzl/flower/service/supplier/SupplierService.java | 7 +++
src/main/java/com/mzl/flower/web/supplier/SupplierController.java | 51 +++++++++++++++++++++++++
src/main/java/com/mzl/flower/mapper/supplier/SupplierMapper.java | 5 ++
src/main/java/com/mzl/flower/dto/response/supplier/SupplierDTO.java | 4 ++
src/main/java/com/mzl/flower/config/PyamentV3Configurer.java | 3 +
src/main/resources/application-test.yml | 8 ++--
7 files changed, 74 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/mzl/flower/config/PyamentV3Configurer.java b/src/main/java/com/mzl/flower/config/PyamentV3Configurer.java
index 9de019a..c138d66 100644
--- a/src/main/java/com/mzl/flower/config/PyamentV3Configurer.java
+++ b/src/main/java/com/mzl/flower/config/PyamentV3Configurer.java
@@ -20,7 +20,8 @@
public static String merchantId = "1661512517";
/** 商户API私钥路径 */
- public static String privateKeyPath = "/opt/pay/wx/v3/apiclient_key.pem";
+ //public static String privateKeyPath = "/opt/pay/wx/v3/apiclient_key.pem";
+ public static String privateKeyPath = "E://huamanyuan/apiclient_key.pem";
/** 商户证书序列号 */
public static String merchantSerialNumber = "37A08A552943EF34883614DBC8DE281598148757";
diff --git a/src/main/java/com/mzl/flower/config/ResourceServerConfig.java b/src/main/java/com/mzl/flower/config/ResourceServerConfig.java
index ac8a6c5..d3ed76c 100644
--- a/src/main/java/com/mzl/flower/config/ResourceServerConfig.java
+++ b/src/main/java/com/mzl/flower/config/ResourceServerConfig.java
@@ -63,6 +63,7 @@
.antMatchers("/api/customer/partner/name").permitAll()
.antMatchers("/api/v2/coupon/app/home/alert").permitAll()
.antMatchers("/v2/config-param/base/info").permitAll()
+ .antMatchers("/api/supplier/**").permitAll()
.antMatchers("/api/**").authenticated();//配置访问控制,必须认证过后才可以访问
}
diff --git a/src/main/java/com/mzl/flower/dto/response/supplier/SupplierDTO.java b/src/main/java/com/mzl/flower/dto/response/supplier/SupplierDTO.java
index ec967dd..d1945d1 100644
--- a/src/main/java/com/mzl/flower/dto/response/supplier/SupplierDTO.java
+++ b/src/main/java/com/mzl/flower/dto/response/supplier/SupplierDTO.java
@@ -7,6 +7,7 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
+import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
@@ -104,4 +105,7 @@
@ApiModelProperty("注册手机号")
private String registerTel;
+
+ @ApiModelProperty("到期日期")
+ private LocalDate overTime;
}
diff --git a/src/main/java/com/mzl/flower/mapper/supplier/SupplierMapper.java b/src/main/java/com/mzl/flower/mapper/supplier/SupplierMapper.java
index 966f229..32d94b7 100644
--- a/src/main/java/com/mzl/flower/mapper/supplier/SupplierMapper.java
+++ b/src/main/java/com/mzl/flower/mapper/supplier/SupplierMapper.java
@@ -6,6 +6,7 @@
import com.mzl.flower.dto.response.supplier.SupplierDTO;
import com.mzl.flower.entity.supplier.Supplier;
import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
import org.springframework.stereotype.Repository;
import java.util.List;
@@ -16,5 +17,9 @@
SupplierDTO findSupplierDetail(@Param("id")Long id);
+
+ @Select("select * from t_supplier_info where contact_tel =#{phone}")
+ SupplierDTO findSupplierByPhone(@Param("phone") String phone);
+
SupplierDTO getCurrentSupplier(@Param("userId")String userId);
}
diff --git a/src/main/java/com/mzl/flower/service/supplier/SupplierService.java b/src/main/java/com/mzl/flower/service/supplier/SupplierService.java
index 0a4582e..c86491a 100644
--- a/src/main/java/com/mzl/flower/service/supplier/SupplierService.java
+++ b/src/main/java/com/mzl/flower/service/supplier/SupplierService.java
@@ -23,6 +23,7 @@
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
+import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
@@ -129,6 +130,12 @@
return dto;
}
+ public SupplierDTO findSupplierByPhone(String phone) {
+ SupplierDTO dto = supplierMapper.findSupplierByPhone(phone);
+ dto.setOverTime(LocalDate.from(dto.getPassTime()));
+ return dto;
+ }
+
public void auditSupplier(AuditSupplierDTO dto) {
Supplier supplier = supplierMapper.selectById(dto.getId());
if(supplier==null){
diff --git a/src/main/java/com/mzl/flower/web/supplier/SupplierController.java b/src/main/java/com/mzl/flower/web/supplier/SupplierController.java
index c78ecb5..79c4d87 100644
--- a/src/main/java/com/mzl/flower/web/supplier/SupplierController.java
+++ b/src/main/java/com/mzl/flower/web/supplier/SupplierController.java
@@ -17,8 +17,14 @@
import org.springframework.http.ResponseEntity;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
import javax.validation.constraints.NotNull;
+
+import java.util.UUID;
+
+import static com.google.common.io.Files.getFileExtension;
+import static sun.font.CreatedFontTracker.MAX_FILE_SIZE;
@RestController
@RequestMapping("/api/supplier")
@@ -27,6 +33,7 @@
@Slf4j
public class SupplierController extends BaseController {
+ private static final R ALLOWED_CONTENT_TYPES = R.valueOf("jpg");
private final SupplierService supplierService;
public SupplierController(SupplierService supplierService) {
@@ -51,6 +58,44 @@
return returnData(R.SUCCESS.getCode(),null);
}
+ @PostMapping("/operation/update")
+ @ApiOperation(value = "运营修改", notes = "运营修改")
+ public ResponseEntity<ReturnDataDTO> operationUpdate(
+ @RequestParam("nickname") String nickname,
+ @RequestParam(value = "avatar", required = false) MultipartFile avatar
+ ) {
+ try {
+ String avatarUrl = null;
+ if (avatar != null && !avatar.isEmpty()) {
+ // 1. 检查文件大小
+ if (avatar.getSize() > MAX_FILE_SIZE) {
+ throw new ValidationException("文件大小不能超过5MB");
+ }
+
+ // 2. 检查文件类型
+ String contentType = avatar.getContentType();
+ if (!ALLOWED_CONTENT_TYPES.contains(contentType)) {
+ throw new ValidationException("不支持的文件类型");
+ }
+
+ // 3. 生成文件名
+ String fileName = "avatar/" + UUID.randomUUID().toString() +
+ getFileExtension(avatar.getOriginalFilename());
+
+ // 4. 上传到 OSS
+ //avatarUrl = ossService.uploadFile(fileName, avatar.getInputStream());
+ }
+
+ // 5. 更新用户信息
+ //supplierService.operationUpdate(nickname, avatarUrl);
+
+ return returnData(R.SUCCESS.getCode(),null);
+ } catch (Exception e) {
+ log.error("更新用户信息失败", e);
+ return returnData(R.RUNTIME_EXCEPTION.getCode(),null);
+ }
+ }
+
@GetMapping("/page")
@ApiOperation(value = "运营端-供应商分页查询", notes = "运营端-供应商分页查询")
public ResponseEntity<ReturnDataDTO<Page<SupplierDTO>>> querySupplier(QuerySupplierDTO dto, Page page) {
@@ -73,6 +118,12 @@
return returnData(R.SUCCESS.getCode(),supplierService.findSupplierDetail(id));
}
+ @GetMapping("/info/{phone}")
+ @ApiOperation(value = "用户详情", notes = "用户详情")
+ public ResponseEntity<ReturnDataDTO<SupplierDTO>> findSupplierByPhone(@PathVariable("phone") String phone) {
+ return returnData(R.SUCCESS.getCode(),supplierService.findSupplierByPhone(phone));
+ }
+
@PostMapping("/audit")
@ApiOperation(value = "运营端-供应商审核", notes = "运营端-供应商审核")
public ResponseEntity<ReturnDataDTO> auditSupplier(@Validated @RequestBody AuditSupplierDTO dto) {
diff --git a/src/main/resources/application-test.yml b/src/main/resources/application-test.yml
index bfa492a..df7197a 100644
--- a/src/main/resources/application-test.yml
+++ b/src/main/resources/application-test.yml
@@ -3,9 +3,9 @@
active: test,swagger
datasource:
type: com.alibaba.druid.pool.DruidDataSource
- url: jdbc:mysql://47.99.58.211:3306/f20?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2b8&allowMultiQueries=true
+ url: jdbc:mysql://47.96.225.205:3306/flower1?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2b8&allowMultiQueries=true
username: root
- password: Hmy@2024!*@&&
+ password: CloudRoam
druid:
initial-size: 5
max-active: 20
@@ -38,8 +38,8 @@
deny:
redis:
database: 0
- host: 47.99.58.211
- password: Hmy@2024
+ host: 192.168.1.235
+ password: 123456
port: 6379
--
Gitblit v1.9.3