jsk 提交 预订退单截止时间

This commit is contained in:
jiask 2025-12-04 10:53:45 +08:00
parent 88c58af55d
commit fa73a0b5a8
6 changed files with 76 additions and 1 deletions

View File

@ -180,6 +180,11 @@
<artifactId>redisson-spring-boot-starter</artifactId>
<version>3.17.7</version>
</dependency>
<dependency>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
<version>3.1</version>
</dependency>
</dependencies>

View File

@ -13,5 +13,9 @@ public interface AccInfoService {
AccInfoVO getAccInfoVoByCustId(Long custId);
/**
* 检查账户状态
* @param accInfoVO
*/
void checkAccInfoAndStatus(AccInfoVO accInfoVO);
}

View File

@ -2,10 +2,12 @@ package com.bonus.canteen.core.order.common.mapper;
import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.bonus.canteen.core.allocation.alloc.model.AllocMetadata;
import com.bonus.canteen.core.order.android.vo.OrderListAndroidVO;
import com.bonus.canteen.core.order.common.dto.OrderSearchParam;
import com.bonus.canteen.core.order.common.model.OrderInfo;
import com.bonus.canteen.core.order.common.vo.OrderIdDateVO;
import com.bonus.canteen.core.order.mobile.vo.OrderInfoMobileVO;
import com.bonus.canteen.core.order.mobile.vo.OrderListMobileVO;
import com.bonus.canteen.core.order.web.dto.OrderUserPermissionDTO;
import org.apache.ibatis.annotations.Mapper;
@ -43,6 +45,8 @@ public interface OrderInfoMapper extends BaseMapper<OrderInfo> {
//
// List<OrderRefundListMobileVO> getOrderRefundMobileList(@Param("orderIds") Collection<Long> orderIds, @Param("startDate") LocalDate startDate, @Param("endDate") LocalDate endDate);
AllocMetadata queryAllocMetadata(OrderInfoMobileVO vo);
List<OrderListAndroidVO> listOrderForAndroid(@Param("orderIds") Collection<Long> orderIds, @Param("startDate") LocalDate startDate, @Param("endDate") LocalDate endDate);
Integer getOrderCounterNum(@Param("orderDate") LocalDate orderDate, @Param("mealtimeType") Integer mealtimeType, @Param("counterId") Long counterId);

View File

@ -5,11 +5,15 @@ import cn.hutool.core.collection.ListUtil;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.text.CharSequenceUtil;
import cn.hutool.core.util.ObjectUtil;
import com.bonus.canteen.core.allocation.alloc.model.AllocMetadata;
import com.bonus.canteen.core.allocation.canteen.dto.AllocCanteenOrderDTO;
import com.bonus.canteen.core.common.redis.RedisUtil;
import com.bonus.canteen.core.common.utils.AesEncryptUtil;
import com.bonus.canteen.core.common.utils.TenantContextHolder;
import com.bonus.canteen.core.menu.model.AllocMealtimeModel;
import com.bonus.canteen.core.order.common.business.OrderRefundBusiness;
import com.bonus.canteen.core.order.common.constants.*;
import com.bonus.canteen.core.order.common.mapper.OrderInfoMapper;
import com.bonus.canteen.core.order.common.model.OrderInfo;
import com.bonus.canteen.core.pay.api.PayApi;
import com.bonus.canteen.core.pay.api.dto.UnifyPayCancelDTO;
@ -47,6 +51,8 @@ import com.bonus.canteen.core.pay.api.vo.UnifyPaySelectVO;
import com.bonus.canteen.core.pay.common.model.TradeRecord;
import com.bonus.canteen.core.menu.model.MenuDishesTypeModel;
import com.bonus.common.houqin.i18n.I18n;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.github.pagehelper.page.PageMethod;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -56,6 +62,7 @@ import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalTime;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
@ -105,6 +112,8 @@ public class OrderInfoMobileBusinessImpl implements OrderInfoMobileBusiness {
@Lazy
@Autowired
protected PayApi payApi;
@Autowired
private OrderInfoMapper orderInfoMapper;
@Override
public PageVO<OrderListMobileVO> orderList(OrderListMobileDTO orderListDTO, RequestHeaderDTO headerDTO) {
@ -191,10 +200,19 @@ public class OrderInfoMobileBusinessImpl implements OrderInfoMobileBusiness {
this.fillOrderDetailMobileCheckState(orderInfoVO, detailMobileList);
this.fillWeightPlateNum(orderInfoVO);
orderInfoVO = this.orderCustomBusiness.mobile().didQueryOrderInfo(orderInfoVO);
AllocMetadata vo=orderInfoMapper.queryAllocMetadata(orderInfoVO);
String modelValue=vo.getModelValue();
ObjectMapper objectMapper = new ObjectMapper();
AllocMealtimeModel am=new AllocMealtimeModel();
try{
am = objectMapper.readValue(modelValue, AllocMealtimeModel.class);
}catch (Exception e){}
if(am.getReserveRefundDeadline()!=null){
orderInfoVO.setReserveRefundDeadline(am.getReserveRefundDeadline());
}
return orderInfoVO;
}
}
protected void fillOrderInfoMobileDetail(OrderInfoMobileVO orderInfoVO, List<OrderDetailMobileVO> detailMobileList) {
log.info("[移动端订单详情]查询配送信息:{}", orderInfoVO.getOrderId());
OrderDelivery deliveryInfo = this.orderDeliveryService.getByOrderId(orderInfoVO.getOrderId(), orderInfoVO.getOrderDate());

View File

@ -13,6 +13,7 @@ import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.util.List;
@ApiModel("移动端订单详情VO")
@ -121,6 +122,8 @@ public class OrderInfoMobileVO {
private Integer orderStateMixMobile;
@ApiModelProperty("订单明细list")
private List<OrderDetailMobileVO> orderDetailList;
//订单回退截止时间
private LocalTime reserveRefundDeadline;
public static OrderInfoMobileVO of(OrderInfo orderInfo) {
return (OrderInfoMobileVO)BeanUtil.copyProperties(orderInfo, OrderInfoMobileVO.class, new String[0]);
@ -582,4 +585,12 @@ public class OrderInfoMobileVO {
public void setOrderDetailList(final List<OrderDetailMobileVO> orderDetailList) {
this.orderDetailList = orderDetailList;
}
public LocalTime getReserveRefundDeadline() {
return reserveRefundDeadline;
}
public void setReserveRefundDeadline(LocalTime reserveRefundDeadline) {
this.reserveRefundDeadline = reserveRefundDeadline;
}
}

View File

@ -1089,6 +1089,39 @@
</if>
ORDER BY oi.order_date DESC, oi.order_id DESC
</select>
<select id="queryAllocMetadata" resultType="com.bonus.canteen.core.allocation.alloc.model.AllocMetadata">
select metadata_id as metadataId,
area_id as areaId,
canteen_id as canteenId,
stall_id as stallId,
if_active as ifActive,
model_type as modelType,
model_key as modelKey,
model_value as modelValue,
model_key_remark as modelKeyRemark,
crby as crby,
crtime as crtime,
upby as upby,
uptime as uptime,
model_item as modelItem
from alloc_metadata where canteen_id=#{canteenId} and stall_id=#{stallId} and model_type='mealtime'
<if test='mealtimeType != null and mealtimeType=="1" '>
AND model_key='mealtimeBreakfast'
</if>
<if test='mealtimeType != null and mealtimeType=="2" '>
AND model_key='mealtimeLunch'
</if>
<if test='mealtimeType != null and mealtimeType=="3" '>
AND model_key='mealtimeAfternoonTea'
</if>
<if test='mealtimeType != null and mealtimeType=="4" '>
AND model_key='mealtimeDinner'
</if>
<if test='mealtimeType != null and mealtimeType=="5" '>
AND model_key='mealtimeMidnightSnack'
</if>
</select>
<!-- <select id="queryOrderIdsByGoodsId" resultType="java.lang.Long">-->
<!-- SELECT oi.order_id-->
<!-- FROM order_info oi-->