From 84ae873e1c19ca7d2ffc5c98248285706dae818b Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期五, 26 六月 2026 18:07:37 +0800
Subject: [PATCH] 功能开发
---
server/services/src/main/java/com/doumee/service/business/impl/MemberRidesServiceImpl.java | 16 ++++++++++++++++
1 files changed, 16 insertions(+), 0 deletions(-)
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/MemberRidesServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/MemberRidesServiceImpl.java
index 4437b8a..e6eecdd 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/MemberRidesServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/MemberRidesServiceImpl.java
@@ -9,6 +9,7 @@
import com.doumee.core.constants.Constants;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
+import com.doumee.core.track.RideActiveCache;
import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
@@ -35,6 +36,7 @@
import com.doumee.service.business.MemberRidesService;
import com.doumee.service.system.SystemDictDataService;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
+import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.BeanUtils;
@@ -55,6 +57,7 @@
* @author 姹熻箘韫�
* @date 2023/09/27 18:06
*/
+@Slf4j
@Service
public class MemberRidesServiceImpl implements MemberRidesService {
@@ -93,6 +96,9 @@
@Autowired
private SystemDictDataMapper systemDictDataMapper;
+ /** 鐢佃溅娲昏穬璁㈠崟缂撳瓨(platform 鍚庡彴寮哄埗杩樿溅鏃跺垹) */
+ @Autowired
+ private RideActiveCache rideActiveCache;
@Override
public String create(MemberRides memberRides) {
@@ -407,6 +413,12 @@
update.setDuration( rideTime > freeRentTime ? rideTime : 0 );
//update.setDuration( freeRentTime > 0 ? rideTime - freeRentTime : rideTime);
memberRidesMapper.updateById(update);
+ // 寮哄埗杩樿溅鈫掑凡杩樿溅:鍒犻櫎娲昏穬璁㈠崟缂撳瓨(鐢佃溅鎵嶆湁杞ㄨ抗;鑷杞� key 涓嶅瓨鍦�,鍒犻櫎涓� no-op 鏃犲)
+ try {
+ rideActiveCache.remove(model.getBikeCode());
+ } catch (Exception e) {
+ log.warn("鍒犻櫎娲昏穬璁㈠崟缂撳瓨澶辫触 bikeCode={}", model.getBikeCode(), e);
+ }
//淇敼鍓�
String beforeContent = JSONObject.toJSONString(model);
//淇敼鍚�
@@ -793,6 +805,9 @@
if(Objects.isNull(bike)){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"璇锋壂鎻忔纭殑杞﹁締鐮侊細銆愭湭鏌ヨ鍒拌溅杈嗕俊鎭��");
}
+ if(!Constants.equalsInteger(bike.getStatus(),Constants.ZERO)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璇ヨ溅杈嗗凡琚攣瀹氬�熺敤锛岃灏濊瘯鏇存崲鍏朵粬杞﹁締锛�");
+ }
if(StringUtils.isBlank(bike.getParamId())){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"杞﹁締绫诲瀷寮傚父锛岃鑱旂郴绠$悊鍛橈紒");
}
@@ -804,6 +819,7 @@
}
memberRidesResponse.setBikeCode(bike.getCode());
memberRidesResponse.setBikeType(baseParam.getName());
+ memberRidesResponse.setRidesType(bikeType);
MemberRides memberRides = new MemberRides();
this.dealMemberRidesData(baseParam.getId(),memberRides);
memberRidesResponse.setBasePrice(memberRides.getBasePrice());
--
Gitblit v1.9.3