更换 redis 版本为 7
This commit is contained in:
parent
1c5b4648f5
commit
97f8282494
@ -24,10 +24,12 @@
|
|||||||
<artifactId>spring-boot-starter-web</artifactId>
|
<artifactId>spring-boot-starter-web</artifactId>
|
||||||
<optional>true</optional> <!-- 设为可选依赖 -->
|
<optional>true</optional> <!-- 设为可选依赖 -->
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-starter-data-redis</artifactId>
|
<artifactId>spring-boot-starter-data-redis</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.commons</groupId>
|
<groupId>org.apache.commons</groupId>
|
||||||
<artifactId>commons-pool2</artifactId>
|
<artifactId>commons-pool2</artifactId>
|
||||||
|
|||||||
@ -69,8 +69,16 @@ public class CommonConstant {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 推送消息类别:Contract-商家入驻合同;orderList-商家订单列表;orderDetail-商家订单详情
|
* 推送消息类别:Contract-商家入驻合同;orderList-商家订单列表;orderDetail-商家订单详情
|
||||||
|
* * mchContract-商家入驻合同;
|
||||||
|
* * mchOrderDetail-商家订单详情;
|
||||||
|
* * mchOnLineOrderList-商家进行中订单列表;
|
||||||
|
* * mchAbnormalOrderList-商家异常订单列表;
|
||||||
|
* * mchRetrunOrderList-商家退款订单列表
|
||||||
*/
|
*/
|
||||||
public static final String PUSH_MSG_CATE_EC = "mchContract";
|
public static final String PUSH_MSG_CATE_EC = "mchContract";
|
||||||
public static final String PUSH_MSG_CATE_ORDER_LIST = "mchOrderList";
|
|
||||||
public static final String PUSH_MSG_CATE_ORDER_DETAIL = "mchOrderDetail";
|
public static final String PUSH_MSG_CATE_MCH_ORDER_DETAIL = "mchOrderDetail";
|
||||||
|
public static final String PUSH_MSG_CATE_MCH_ONLINE_ORDER_LIST = "mchOnLineOrderList";
|
||||||
|
public static final String PUSH_MSG_CATE_MCH_ABNORMAL_ORDER_LIST = "mchAbnormalOrderList";
|
||||||
|
public static final String PUSH_MSG_CATE_MCH_RETURN_ORDER_LIST = "mchRetrunOrderList";
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
package com.suisung.mall.shop.order.controller.admin;
|
package com.suisung.mall.shop.order.controller.admin;
|
||||||
|
|
||||||
import cn.hutool.core.convert.Convert;
|
import cn.hutool.core.convert.Convert;
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
import cn.hutool.json.JSONObject;
|
import cn.hutool.json.JSONObject;
|
||||||
import cn.hutool.json.JSONUtil;
|
import cn.hutool.json.JSONUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
@ -11,6 +12,7 @@ import com.suisung.mall.common.api.StateCode;
|
|||||||
import com.suisung.mall.common.domain.UserDto;
|
import com.suisung.mall.common.domain.UserDto;
|
||||||
import com.suisung.mall.common.exception.ApiException;
|
import com.suisung.mall.common.exception.ApiException;
|
||||||
import com.suisung.mall.common.modules.order.*;
|
import com.suisung.mall.common.modules.order.*;
|
||||||
|
import com.suisung.mall.common.modules.order.dto.MchOrderInfoDTO;
|
||||||
import com.suisung.mall.common.service.impl.BaseControllerImpl;
|
import com.suisung.mall.common.service.impl.BaseControllerImpl;
|
||||||
import com.suisung.mall.common.utils.CheckUtil;
|
import com.suisung.mall.common.utils.CheckUtil;
|
||||||
import com.suisung.mall.common.utils.I18nUtil;
|
import com.suisung.mall.common.utils.I18nUtil;
|
||||||
@ -40,6 +42,8 @@ import java.util.stream.Collectors;
|
|||||||
@Slf4j
|
@Slf4j
|
||||||
public class ShopOrderBaseController extends BaseControllerImpl {
|
public class ShopOrderBaseController extends BaseControllerImpl {
|
||||||
|
|
||||||
|
private static final long mchOrderExpireSeconds = 1500; // 25分钟超时,60秒*25分钟 = 1500秒
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private ShopOrderBaseService shopOrderBaseService;
|
private ShopOrderBaseService shopOrderBaseService;
|
||||||
|
|
||||||
@ -296,7 +300,7 @@ public class ShopOrderBaseController extends BaseControllerImpl {
|
|||||||
// 商家版接口 开始
|
// 商家版接口 开始
|
||||||
|
|
||||||
|
|
||||||
@ApiOperation(value = "查询移动商家端订单数据(新)", notes = "查询移动商家端订单数据(新)")
|
@ApiOperation(value = "查询商家端订单分页数据(新)", notes = "查询商家端订单分页数据(新)")
|
||||||
@RequestMapping(value = "/mch/order/list", method = RequestMethod.POST)
|
@RequestMapping(value = "/mch/order/list", method = RequestMethod.POST)
|
||||||
public CommonResult selectMchOrderPageList(@RequestBody JSONObject params) {
|
public CommonResult selectMchOrderPageList(@RequestBody JSONObject params) {
|
||||||
// === 用户验证 ===
|
// === 用户验证 ===
|
||||||
@ -321,14 +325,13 @@ public class ShopOrderBaseController extends BaseControllerImpl {
|
|||||||
// === 构建响应数据 ===
|
// === 构建响应数据 ===
|
||||||
Map<String, Object> respMap = new HashMap<>();
|
Map<String, Object> respMap = new HashMap<>();
|
||||||
// 订单列表数据(缓存时间25分钟)
|
// 订单列表数据(缓存时间25分钟)
|
||||||
long expireSeconds = 1500L;// 60秒*25分钟 = 1500秒
|
|
||||||
respMap.put("order_page_list", shopOrderBaseService.selectMchOrderPageList(
|
respMap.put("order_page_list", shopOrderBaseService.selectMchOrderPageList(
|
||||||
storeId,
|
storeId,
|
||||||
params.getStr("keyword"),
|
params.getStr("keyword"),
|
||||||
params.getInt("delivery"),
|
params.getInt("delivery"),
|
||||||
params.getInt("status"),
|
params.getInt("status"),
|
||||||
params.getInt("logistics_status"),
|
params.getInt("logistics_status"),
|
||||||
expireSeconds,
|
mchOrderExpireSeconds,
|
||||||
params.getLong("begin_time"),
|
params.getLong("begin_time"),
|
||||||
params.getLong("end_time"),
|
params.getLong("end_time"),
|
||||||
params.getInt("pageNum"),
|
params.getInt("pageNum"),
|
||||||
@ -336,11 +339,51 @@ public class ShopOrderBaseController extends BaseControllerImpl {
|
|||||||
));
|
));
|
||||||
|
|
||||||
// 订单数量统计
|
// 订单数量统计
|
||||||
respMap.put("order_count", shopOrderBaseService.mchOrderCountByStoreId(storeId, expireSeconds, params.getLong("begin_time"), params.getLong("end_time")));
|
respMap.put("order_count", shopOrderBaseService.mchOrderCountByStoreId(storeId, mchOrderExpireSeconds, params.getLong("begin_time"), params.getLong("end_time")));
|
||||||
|
|
||||||
return CommonResult.success(respMap);
|
return CommonResult.success(respMap);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ApiOperation(value = "获取商家端订单详情数据(新)", notes = "获取商家端订单详情数据(新)")
|
||||||
|
@PostMapping(value = "/mch/order/detail")
|
||||||
|
public CommonResult getMchOrderDetail(@RequestBody JSONObject params) {
|
||||||
|
try {
|
||||||
|
// 1. 参数校验
|
||||||
|
String orderId = params.getStr("orderId");
|
||||||
|
if (StrUtil.isBlank(orderId)) {
|
||||||
|
log.warn("订单ID不能为空");
|
||||||
|
return CommonResult.failed(ResultCode.VALIDATE_FAILED);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 2. 获取订单详情
|
||||||
|
MchOrderInfoDTO mchOrderInfoDTO = shopOrderBaseService.getMchOrderDetail(orderId, mchOrderExpireSeconds);
|
||||||
|
if (mchOrderInfoDTO == null) {
|
||||||
|
log.info("未查询到订单ID:{}的详情", orderId);
|
||||||
|
return CommonResult.success(null);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 3. 用户认证
|
||||||
|
UserDto userDto = getCurrentUser();
|
||||||
|
if (userDto == null) {
|
||||||
|
log.warn("未获取到当前用户信息");
|
||||||
|
return CommonResult.failed(ResultCode.NEED_LOGIN);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 4. 店铺权限校验
|
||||||
|
Integer storeId = Convert.toInt(userDto.getStore_id());
|
||||||
|
if (storeId != null && storeId > 0 && !storeId.equals(mchOrderInfoDTO.getOrder_state_id())) {
|
||||||
|
log.warn("用户{}无权限访问订单{}", userDto.getId(), orderId);
|
||||||
|
return CommonResult.failed(ResultCode.FORBIDDEN);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 5. 返回结果
|
||||||
|
return CommonResult.success(mchOrderInfoDTO);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("获取商家端订单详情异常", e);
|
||||||
|
return CommonResult.failed();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// 商家版接口 结束
|
// 商家版接口 结束
|
||||||
|
|
||||||
|
|||||||
@ -3,11 +3,10 @@ package com.suisung.mall.shop.order.controller.mobile;
|
|||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.suisung.mall.common.api.CommonResult;
|
import com.suisung.mall.common.api.CommonResult;
|
||||||
|
import com.suisung.mall.common.api.ResultCode;
|
||||||
import com.suisung.mall.common.domain.UserDto;
|
import com.suisung.mall.common.domain.UserDto;
|
||||||
import com.suisung.mall.common.exception.ApiUserException;
|
|
||||||
import com.suisung.mall.common.modules.order.ShopOrderReturnReason;
|
import com.suisung.mall.common.modules.order.ShopOrderReturnReason;
|
||||||
import com.suisung.mall.common.service.impl.BaseControllerImpl;
|
import com.suisung.mall.common.service.impl.BaseControllerImpl;
|
||||||
import com.suisung.mall.common.utils.I18nUtil;
|
|
||||||
import com.suisung.mall.shop.order.service.ShopOrderReturnReasonService;
|
import com.suisung.mall.shop.order.service.ShopOrderReturnReasonService;
|
||||||
import com.suisung.mall.shop.order.service.ShopOrderReturnService;
|
import com.suisung.mall.shop.order.service.ShopOrderReturnService;
|
||||||
import com.suisung.mall.shop.order.vo.OrderReturnInputVo;
|
import com.suisung.mall.shop.order.vo.OrderReturnInputVo;
|
||||||
@ -61,6 +60,11 @@ public class UserReturnController extends BaseControllerImpl {
|
|||||||
@ApiOperation(value = "添加退款退货-部分退货,卖家也可以决定不退货退款,买家申请退款不支持。卖家可以主动退款。", notes = "添加退款退货-发货退货,卖家也可以决定不退货退款,买家申请退款不支持。卖家可以主动退款。")
|
@ApiOperation(value = "添加退款退货-部分退货,卖家也可以决定不退货退款,买家申请退款不支持。卖家可以主动退款。", notes = "添加退款退货-发货退货,卖家也可以决定不退货退款,买家申请退款不支持。卖家可以主动退款。")
|
||||||
@RequestMapping(value = "/addItem", method = RequestMethod.GET)
|
@RequestMapping(value = "/addItem", method = RequestMethod.GET)
|
||||||
public CommonResult addItem(OrderReturnVo orderReturnVo) {
|
public CommonResult addItem(OrderReturnVo orderReturnVo) {
|
||||||
|
UserDto user = getCurrentUser();
|
||||||
|
if (user == null) {
|
||||||
|
return CommonResult.failed(ResultCode.NEED_LOGIN);
|
||||||
|
}
|
||||||
|
|
||||||
OrderReturnInputVo orderReturnInputVo = BeanUtil.copyProperties(orderReturnVo, OrderReturnInputVo.class);
|
OrderReturnInputVo orderReturnInputVo = BeanUtil.copyProperties(orderReturnVo, OrderReturnInputVo.class);
|
||||||
|
|
||||||
OrderReturnItemInputVo orderReturnItemInputVo = new OrderReturnItemInputVo();
|
OrderReturnItemInputVo orderReturnItemInputVo = new OrderReturnItemInputVo();
|
||||||
@ -70,16 +74,15 @@ public class UserReturnController extends BaseControllerImpl {
|
|||||||
|
|
||||||
orderReturnInputVo.getReturn_items().add(orderReturnItemInputVo);
|
orderReturnInputVo.getReturn_items().add(orderReturnItemInputVo);
|
||||||
|
|
||||||
return shopOrderReturnService.addItem(orderReturnInputVo);
|
return shopOrderReturnService.addItem(orderReturnInputVo, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiOperation(value = "添加退款退货-整单退货", notes = "添加退款退货-整单退货")
|
@ApiOperation(value = "添加退款退货-整单退货", notes = "添加退款退货-整单退货")
|
||||||
@RequestMapping(value = "/addWholeItems", method = RequestMethod.POST)
|
@RequestMapping(value = "/addWholeItems", method = RequestMethod.POST)
|
||||||
public CommonResult addWholeItems(@RequestParam(name = "order_id") String order_id) {
|
public CommonResult addWholeItems(@RequestParam(name = "order_id") String order_id) {
|
||||||
UserDto user = getCurrentUser();
|
UserDto user = getCurrentUser();
|
||||||
|
|
||||||
if (user == null) {
|
if (user == null) {
|
||||||
throw new ApiUserException(I18nUtil._("用户信息异常!"));
|
return CommonResult.failed(ResultCode.NEED_LOGIN);
|
||||||
}
|
}
|
||||||
|
|
||||||
return shopOrderReturnService.addWholeItems(order_id, false, "");
|
return shopOrderReturnService.addWholeItems(order_id, false, "");
|
||||||
|
|||||||
@ -1,10 +1,13 @@
|
|||||||
package com.suisung.mall.shop.order.listener;
|
package com.suisung.mall.shop.order.listener;
|
||||||
|
|
||||||
import cn.hutool.core.convert.Convert;
|
import cn.hutool.core.convert.Convert;
|
||||||
|
import cn.hutool.json.JSONObject;
|
||||||
import com.rabbitmq.client.Channel;
|
import com.rabbitmq.client.Channel;
|
||||||
import com.suisung.mall.common.api.StateCode;
|
import com.suisung.mall.common.api.StateCode;
|
||||||
|
import com.suisung.mall.common.constant.CommonConstant;
|
||||||
import com.suisung.mall.common.constant.MqConstant;
|
import com.suisung.mall.common.constant.MqConstant;
|
||||||
import com.suisung.mall.common.modules.order.ShopOrderInfo;
|
import com.suisung.mall.common.modules.order.ShopOrderInfo;
|
||||||
|
import com.suisung.mall.common.utils.DateTimeUtils;
|
||||||
import com.suisung.mall.shop.message.service.PushMessageService;
|
import com.suisung.mall.shop.message.service.PushMessageService;
|
||||||
import com.suisung.mall.shop.order.service.ShopOrderBaseService;
|
import com.suisung.mall.shop.order.service.ShopOrderBaseService;
|
||||||
import com.suisung.mall.shop.order.service.ShopOrderInfoService;
|
import com.suisung.mall.shop.order.service.ShopOrderInfoService;
|
||||||
@ -21,6 +24,7 @@ import org.springframework.data.util.Pair;
|
|||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -119,6 +123,15 @@ public class OrderPayedListener {
|
|||||||
logger.info("顺丰同城下单成功");
|
logger.info("顺丰同城下单成功");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 同城配送或普通快递,都发送 unipush 推送:您有一个新的订单,请查收!
|
||||||
|
String orderType = orderInfoOld.getDelivery_type_id() == StateCode.DELIVERY_TYPE_SAME_CITY ? "同城" : "";
|
||||||
|
String title = String.format("您有一个新的%s订单,请注意查收!", orderType);
|
||||||
|
String content = String.format("新%s订单号:%s,用户在%s下的单,请注意查收!", orderId, DateTimeUtils.formatDateTime(LocalDateTime.now(), "yyyy-MM-dd HH:mm:ss"));
|
||||||
|
JSONObject payload = new JSONObject();
|
||||||
|
payload.put("category", CommonConstant.PUSH_MSG_CATE_MCH_ONLINE_ORDER_LIST);
|
||||||
|
payload.put("orderId", orderId);
|
||||||
|
pushMessageService.noticeMerchantEmployeeOrderAction(orderInfoOld.getStore_id(), orderId, title, content, payload);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -93,6 +93,16 @@ public interface ShopOrderBaseMapper extends BaseMapper<ShopOrderBase> {
|
|||||||
*/
|
*/
|
||||||
Long countMchOrderByCondition(@Param("storeId") Integer storeId, @Param("keyword") String keyword, @Param("delivery") Integer delivery, @Param("status") Integer status, @Param("logisticsStatus") Integer logisticsStatus, @Param("expireSeconds") Long expireSeconds, @Param("beginTime") Long beginTime, @Param("endTime") Long endTime);
|
Long countMchOrderByCondition(@Param("storeId") Integer storeId, @Param("keyword") String keyword, @Param("delivery") Integer delivery, @Param("status") Integer status, @Param("logisticsStatus") Integer logisticsStatus, @Param("expireSeconds") Long expireSeconds, @Param("beginTime") Long beginTime, @Param("endTime") Long endTime);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取商家版订单详情(新)
|
||||||
|
*
|
||||||
|
* @param orderId
|
||||||
|
* @param expireSeconds 配送超时的秒数,单位秒
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
MchOrderInfoDTO getMchOrderDetail(@Param("orderId") String orderId, @Param("expireSeconds") Long expireSeconds);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取微信发货订单基本信息
|
* 获取微信发货订单基本信息
|
||||||
*
|
*
|
||||||
|
|||||||
@ -568,6 +568,15 @@ public interface ShopOrderBaseService extends IBaseService<ShopOrderBase> {
|
|||||||
*/
|
*/
|
||||||
Long countMchOrderByCondition(Integer storeId, String keyword, Integer delivery, Integer status, Integer logisticsStatus, Long expireSeconds, Long beginTime, Long endTime);
|
Long countMchOrderByCondition(Integer storeId, String keyword, Integer delivery, Integer status, Integer logisticsStatus, Long expireSeconds, Long beginTime, Long endTime);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取商家订单详情
|
||||||
|
*
|
||||||
|
* @param orderId
|
||||||
|
* @param expireSeconds 配送超时的秒数,单位秒
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
MchOrderInfoDTO getMchOrderDetail(String orderId, Long expireSeconds);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 商家订单各个分类和状态的订单数量
|
* 商家订单各个分类和状态的订单数量
|
||||||
|
|||||||
@ -41,17 +41,20 @@ public interface ShopOrderReturnService extends IBaseService<ShopOrderReturn> {
|
|||||||
long getReturnNum(List<Integer> return_state_id, Integer store_id, Integer subsite_id);
|
long getReturnNum(List<Integer> return_state_id, Integer store_id, Integer subsite_id);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* 提交一条退货订单,等待商家审核处理(同意或不同意)
|
||||||
|
*
|
||||||
* @param orderReturnInputVo
|
* @param orderReturnInputVo
|
||||||
|
* @param needSendMsg 是否需要发(站内 推送)消息
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
CommonResult addItem(OrderReturnInputVo orderReturnInputVo);
|
CommonResult addItem(OrderReturnInputVo orderReturnInputVo, Boolean needSendMsg);
|
||||||
|
|
||||||
Map getReturnDetail(String return_id);
|
Map getReturnDetail(String return_id);
|
||||||
|
|
||||||
boolean processReviewList(ShopOrderReturn shopOrderReturn, Integer receiving_address);
|
boolean processReviewList(ShopOrderReturn shopOrderReturn, Integer receiving_address);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 退单审核
|
* 退单审核,商家审核处理(同意或不同意)
|
||||||
*
|
*
|
||||||
* @param return_ids 退单编号
|
* @param return_ids 退单编号
|
||||||
* @param return_rows 退单数据
|
* @param return_rows 退单数据
|
||||||
|
|||||||
@ -2801,7 +2801,7 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
|
|||||||
throw new ApiException(I18nUtil._("订单商品表为空!"));
|
throw new ApiException(I18nUtil._("订单商品表为空!"));
|
||||||
}
|
}
|
||||||
editOrderInfo(time, order_ids);
|
editOrderInfo(time, order_ids);
|
||||||
// 生成退款单
|
// 延迟支付,系统自动退款。生成退款单
|
||||||
OrderReturnInputVo orderReturnInputVo = new OrderReturnInputVo();
|
OrderReturnInputVo orderReturnInputVo = new OrderReturnInputVo();
|
||||||
orderReturnInputVo.setOrder_id(orderInfo.getOrder_id());
|
orderReturnInputVo.setOrder_id(orderInfo.getOrder_id());
|
||||||
orderReturnInputVo.setReturn_tel("");
|
orderReturnInputVo.setReturn_tel("");
|
||||||
@ -2816,7 +2816,8 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
|
|||||||
returnItemInputVo.setReturn_refund_amount(orderItem.getOrder_item_payment_amount());
|
returnItemInputVo.setReturn_refund_amount(orderItem.getOrder_item_payment_amount());
|
||||||
orderReturnInputVo.getReturn_items().add(returnItemInputVo);
|
orderReturnInputVo.getReturn_items().add(returnItemInputVo);
|
||||||
}
|
}
|
||||||
shopOrderReturnService.addItem(orderReturnInputVo);
|
shopOrderReturnService.addItem(orderReturnInputVo, true);
|
||||||
|
|
||||||
is_refund = true;
|
is_refund = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -8601,6 +8602,26 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
|
|||||||
return shopOrderBaseMapper.countMchOrderByCondition(storeId, keyword, delivery, status, logisticsStatus, expireSeconds, beginTime, endTime);
|
return shopOrderBaseMapper.countMchOrderByCondition(storeId, keyword, delivery, status, logisticsStatus, expireSeconds, beginTime, endTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取商家订单详情
|
||||||
|
*
|
||||||
|
* @param orderId
|
||||||
|
* @param expireSeconds 配送超时的秒数,单位秒
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public MchOrderInfoDTO getMchOrderDetail(String orderId, Long expireSeconds) {
|
||||||
|
if (StrUtil.isBlank(orderId)) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (expireSeconds == null || expireSeconds <= 0) {
|
||||||
|
expireSeconds = 60 * 60 * 24 * 7 * 1000L;
|
||||||
|
}
|
||||||
|
|
||||||
|
return shopOrderBaseMapper.getMchOrderDetail(orderId, expireSeconds);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 商家订单各个分类和状态的订单数量
|
* 商家订单各个分类和状态的订单数量
|
||||||
|
|||||||
@ -17,6 +17,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|||||||
import com.suisung.mall.common.api.CommonResult;
|
import com.suisung.mall.common.api.CommonResult;
|
||||||
import com.suisung.mall.common.api.ResultCode;
|
import com.suisung.mall.common.api.ResultCode;
|
||||||
import com.suisung.mall.common.api.StateCode;
|
import com.suisung.mall.common.api.StateCode;
|
||||||
|
import com.suisung.mall.common.constant.CommonConstant;
|
||||||
import com.suisung.mall.common.constant.ConfigConstant;
|
import com.suisung.mall.common.constant.ConfigConstant;
|
||||||
import com.suisung.mall.common.domain.UserDto;
|
import com.suisung.mall.common.domain.UserDto;
|
||||||
import com.suisung.mall.common.exception.ApiException;
|
import com.suisung.mall.common.exception.ApiException;
|
||||||
@ -34,10 +35,7 @@ import com.suisung.mall.common.modules.product.ShopProductItem;
|
|||||||
import com.suisung.mall.common.modules.store.ShopStoreBase;
|
import com.suisung.mall.common.modules.store.ShopStoreBase;
|
||||||
import com.suisung.mall.common.modules.store.ShopStoreShippingAddress;
|
import com.suisung.mall.common.modules.store.ShopStoreShippingAddress;
|
||||||
import com.suisung.mall.common.service.MessageService;
|
import com.suisung.mall.common.service.MessageService;
|
||||||
import com.suisung.mall.common.utils.CSVUtils;
|
import com.suisung.mall.common.utils.*;
|
||||||
import com.suisung.mall.common.utils.CheckUtil;
|
|
||||||
import com.suisung.mall.common.utils.I18nUtil;
|
|
||||||
import com.suisung.mall.common.utils.LogUtil;
|
|
||||||
import com.suisung.mall.core.web.service.impl.BaseServiceImpl;
|
import com.suisung.mall.core.web.service.impl.BaseServiceImpl;
|
||||||
import com.suisung.mall.shop.base.service.AccountBaseConfigService;
|
import com.suisung.mall.shop.base.service.AccountBaseConfigService;
|
||||||
import com.suisung.mall.shop.base.service.ShopBaseProductUnitService;
|
import com.suisung.mall.shop.base.service.ShopBaseProductUnitService;
|
||||||
@ -45,6 +43,7 @@ import com.suisung.mall.shop.base.service.ShopBaseStateCodeService;
|
|||||||
import com.suisung.mall.shop.distribution.service.ShopDistributionUserCommissionService;
|
import com.suisung.mall.shop.distribution.service.ShopDistributionUserCommissionService;
|
||||||
import com.suisung.mall.shop.distribution.service.ShopDistributionUserOrderItemService;
|
import com.suisung.mall.shop.distribution.service.ShopDistributionUserOrderItemService;
|
||||||
import com.suisung.mall.shop.distribution.service.ShopDistributionUserOrderService;
|
import com.suisung.mall.shop.distribution.service.ShopDistributionUserOrderService;
|
||||||
|
import com.suisung.mall.shop.message.service.PushMessageService;
|
||||||
import com.suisung.mall.shop.number.service.ShopNumberSeqService;
|
import com.suisung.mall.shop.number.service.ShopNumberSeqService;
|
||||||
import com.suisung.mall.shop.order.mapper.ShopOrderReturnMapper;
|
import com.suisung.mall.shop.order.mapper.ShopOrderReturnMapper;
|
||||||
import com.suisung.mall.shop.order.service.*;
|
import com.suisung.mall.shop.order.service.*;
|
||||||
@ -70,6 +69,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@ -133,6 +133,9 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl<ShopOrderReturnM
|
|||||||
pay_channel_id_row.put("1413", I18nUtil._("线下付款"));
|
pay_channel_id_row.put("1413", I18nUtil._("线下付款"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Lazy
|
||||||
|
@Autowired
|
||||||
|
private PushMessageService pushMessageService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private ShopOrderReturnMapper shopOrderReturnMapper;
|
private ShopOrderReturnMapper shopOrderReturnMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
@ -413,22 +416,22 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl<ShopOrderReturnM
|
|||||||
/**
|
/**
|
||||||
* 添加退款退货-发货退货,卖家也可以决定不退货退款,买家申请退款不支持。卖家可以主动退款。
|
* 添加退款退货-发货退货,卖家也可以决定不退货退款,买家申请退款不支持。卖家可以主动退款。
|
||||||
*
|
*
|
||||||
|
* @param orderReturnInputVo
|
||||||
|
* @param needSendMsg 是否需要发(站内 推送)消息
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
public CommonResult addItem(OrderReturnInputVo orderReturnInputVo) {
|
public CommonResult addItem(OrderReturnInputVo orderReturnInputVo, Boolean needSendMsg) {
|
||||||
Map data = new HashMap();
|
Map data = new HashMap();
|
||||||
|
|
||||||
Integer user_id;
|
Integer user_id = orderReturnInputVo.getUser_id();
|
||||||
if (CheckUtil.isEmpty(orderReturnInputVo.getUser_id())) {
|
if (CheckUtil.isEmpty(user_id)) {
|
||||||
UserDto user = getCurrentUser();
|
UserDto user = getCurrentUser();
|
||||||
if (user == null) {
|
if (user == null) {
|
||||||
throw new ApiUserException(I18nUtil._("用户信息异常!"));
|
throw new ApiUserException(I18nUtil._("用户信息异常!"));
|
||||||
}
|
}
|
||||||
user_id = user.getId();
|
user_id = user.getId();
|
||||||
} else {
|
|
||||||
user_id = orderReturnInputVo.getUser_id();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//是否有店铺
|
//是否有店铺
|
||||||
@ -467,7 +470,9 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl<ShopOrderReturnM
|
|||||||
}
|
}
|
||||||
|
|
||||||
// todo 检测该订单使用的优惠券等情况
|
// todo 检测该订单使用的优惠券等情况
|
||||||
if (CheckUtil.checkDataRights(user_id, orderBase, ShopOrderBase::getBuyer_user_id)) {
|
if (!CheckUtil.checkDataRights(user_id, orderBase, ShopOrderBase::getBuyer_user_id)) {
|
||||||
|
throw new ApiException(ResultCode.FORBIDDEN);
|
||||||
|
}
|
||||||
|
|
||||||
String return_id = orderReturnInputVo.getReturn_id();
|
String return_id = orderReturnInputVo.getReturn_id();
|
||||||
Integer return_reason_id = orderReturnInputVo.getReturn_reason_id();
|
Integer return_reason_id = orderReturnInputVo.getReturn_reason_id();
|
||||||
@ -548,14 +553,6 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl<ShopOrderReturnM
|
|||||||
throw new ApiException(ResultCode.FAILED);
|
throw new ApiException(ResultCode.FAILED);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 退货单提交成功,对商家进行提醒
|
|
||||||
// String message_id = "return-reminder";
|
|
||||||
// Map args = new HashMap();
|
|
||||||
// args.put("order_id", return_id);
|
|
||||||
// args.put("id", order_id);
|
|
||||||
// args.put("return_id", return_id);
|
|
||||||
// args.put("order_item", String.format(("退货商品编号:[%s]"), order_item_id));
|
|
||||||
// messageService.sendNoticeMsg(0, store_id, message_id, args);
|
|
||||||
|
|
||||||
data.put("return", orderReturn);
|
data.put("return", orderReturn);
|
||||||
data.put("items", shopOrderReturnItems);
|
data.put("items", shopOrderReturnItems);
|
||||||
@ -572,15 +569,34 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl<ShopOrderReturnM
|
|||||||
shopOrderReturnService.review(shopOrderReturn, 0);
|
shopOrderReturnService.review(shopOrderReturn, 0);
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
// 商家退款提醒
|
if (needSendMsg) {
|
||||||
String message_id2 = "refund-reminder";
|
// 退款提醒商家
|
||||||
Map args1 = new HashMap();
|
// 退货单提交成功,对商家进行提醒
|
||||||
args1.put("order_id", orderReturn.getReturn_id());
|
// String message_id = "return-reminder";
|
||||||
messageService.sendNoticeMsg(0, store_id, message_id2, args1);
|
// Map args = new HashMap();
|
||||||
} else {
|
// args.put("order_id", return_id);
|
||||||
throw new ApiException(ResultCode.FORBIDDEN);
|
// args.put("id", order_id);
|
||||||
|
// args.put("return_id", return_id);
|
||||||
|
// args.put("order_item", String.format(("退货商品编号:[%s]"), order_item_id));
|
||||||
|
// messageService.sendNoticeMsg(0, store_id, message_id, args);
|
||||||
|
|
||||||
|
String message_id = "refund-reminder";
|
||||||
|
Map args = new HashMap();
|
||||||
|
args.put("order_id", orderReturn.getReturn_id());
|
||||||
|
messageService.sendNoticeMsg(0, store_id, message_id, args);
|
||||||
|
|
||||||
|
// 发送unipush 消息
|
||||||
|
|
||||||
|
String title = "您有一个退款的订单,请及时前往后台审核!";
|
||||||
|
String content = String.format("订单号:%s 退单号:[%s],时间:%s,请及时前往后台审核!", order_id, orderReturn.getReturn_id(), DateTimeUtils.formatDateTime(LocalDateTime.now(), "yyyy-MM-dd HH:mm:ss"));
|
||||||
|
JSONObject payload = new JSONObject();
|
||||||
|
payload.put("category", CommonConstant.PUSH_MSG_CATE_MCH_RETURN_ORDER_LIST);
|
||||||
|
payload.put("orderId", order_id);
|
||||||
|
payload.put("returnId", orderReturn.getReturn_id());
|
||||||
|
pushMessageService.noticeMerchantEmployeeOrderAction(store_id, order_id, title, content, payload);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
data.put("order_item_ids", order_item_ids);
|
data.put("order_item_ids", order_item_ids);
|
||||||
|
|
||||||
return CommonResult.success(data);
|
return CommonResult.success(data);
|
||||||
@ -2060,7 +2076,7 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl<ShopOrderReturnM
|
|||||||
orderReturnInputVo.getReturn_items().add(returnItemInputVo);
|
orderReturnInputVo.getReturn_items().add(returnItemInputVo);
|
||||||
}
|
}
|
||||||
|
|
||||||
return addItem(orderReturnInputVo);
|
return addItem(orderReturnInputVo, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -2276,7 +2292,7 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl<ShopOrderReturnM
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
CommonResult createResult = addItem(refundRequest);
|
CommonResult createResult = addItem(refundRequest, false);
|
||||||
if (createResult == null || createResult.getStatus() != 200) {
|
if (createResult == null || createResult.getStatus() != 200) {
|
||||||
log.error("退货单创建失败,params:{}", refundRequest);
|
log.error("退货单创建失败,params:{}", refundRequest);
|
||||||
return createResult;
|
return createResult;
|
||||||
|
|||||||
@ -230,7 +230,7 @@ public class SFExpressApiServiceImpl implements SFExpressApiService {
|
|||||||
|
|
||||||
// 个推推送消息
|
// 个推推送消息
|
||||||
JSONObject payload = new JSONObject();
|
JSONObject payload = new JSONObject();
|
||||||
payload.put("category", CommonConstant.PUSH_MSG_CATE_ORDER_DETAIL);
|
payload.put("category", CommonConstant.PUSH_MSG_CATE_MCH_ORDER_DETAIL);
|
||||||
payload.put("orderId", shopOrderId);
|
payload.put("orderId", shopOrderId);
|
||||||
pushMessageService.noticeMerchantEmployeeOrderAction(null, shopOrderId, "您有一笔新的订单", "您有一笔同城订单[" + shopOrderId + "],请及时处理。", payload);
|
pushMessageService.noticeMerchantEmployeeOrderAction(null, shopOrderId, "您有一笔新的订单", "您有一笔同城订单[" + shopOrderId + "],请及时处理。", payload);
|
||||||
|
|
||||||
@ -585,7 +585,7 @@ public class SFExpressApiServiceImpl implements SFExpressApiService {
|
|||||||
|
|
||||||
// 个推推送消息
|
// 个推推送消息
|
||||||
JSONObject payload = new JSONObject();
|
JSONObject payload = new JSONObject();
|
||||||
payload.put("category", CommonConstant.PUSH_MSG_CATE_ORDER_DETAIL);
|
payload.put("category", CommonConstant.PUSH_MSG_CATE_MCH_ORDER_DETAIL);
|
||||||
payload.put("orderId", shopOrderId);
|
payload.put("orderId", shopOrderId);
|
||||||
pushMessageService.noticeMerchantEmployeeOrderAction(null, shopOrderId, "您有一笔取消订单", "您有一笔取消订单[" + shopOrderId + "],请及时处理。", null);
|
pushMessageService.noticeMerchantEmployeeOrderAction(null, shopOrderId, "您有一笔取消订单", "您有一笔取消订单[" + shopOrderId + "],请及时处理。", null);
|
||||||
|
|
||||||
@ -688,7 +688,7 @@ public class SFExpressApiServiceImpl implements SFExpressApiService {
|
|||||||
|
|
||||||
// 消息推送
|
// 消息推送
|
||||||
JSONObject payload = new JSONObject();
|
JSONObject payload = new JSONObject();
|
||||||
payload.put("category", CommonConstant.PUSH_MSG_CATE_ORDER_DETAIL);
|
payload.put("category", CommonConstant.PUSH_MSG_CATE_MCH_ORDER_DETAIL);
|
||||||
payload.put("orderId", orderId);
|
payload.put("orderId", orderId);
|
||||||
pushMessageService.noticeMerchantEmployeeOrderAction(null, orderId, "", "顺丰同城订单[" + orderId + "]" + pushRemark, payload);
|
pushMessageService.noticeMerchantEmployeeOrderAction(null, orderId, "", "顺丰同城订单[" + orderId + "]" + pushRemark, payload);
|
||||||
|
|
||||||
@ -764,7 +764,7 @@ public class SFExpressApiServiceImpl implements SFExpressApiService {
|
|||||||
|
|
||||||
// 消息推送
|
// 消息推送
|
||||||
JSONObject payload = new JSONObject();
|
JSONObject payload = new JSONObject();
|
||||||
payload.put("category", CommonConstant.PUSH_MSG_CATE_ORDER_DETAIL);
|
payload.put("category", CommonConstant.PUSH_MSG_CATE_MCH_ORDER_DETAIL);
|
||||||
payload.put("orderId", orderId);
|
payload.put("orderId", orderId);
|
||||||
pushMessageService.noticeMerchantEmployeeOrderAction(null, orderId, "", "顺丰同城订单[" + orderId + "]已完成配送。", null);
|
pushMessageService.noticeMerchantEmployeeOrderAction(null, orderId, "", "顺丰同城订单[" + orderId + "]已完成配送。", null);
|
||||||
|
|
||||||
|
|||||||
@ -109,7 +109,6 @@ public interface ShopUserCartService extends IBaseService<ShopUserCart> {
|
|||||||
* 7.4、计算每样商品的佣金
|
* 7.4、计算每样商品的佣金
|
||||||
* 7.5、计算最终运费,运费根据重量计费,同一店铺一次发货,商品独立计算快递费用不合理。
|
* 7.5、计算最终运费,运费根据重量计费,同一店铺一次发货,商品独立计算快递费用不合理。
|
||||||
* 9、计算总价
|
* 9、计算总价
|
||||||
* 9、
|
|
||||||
*
|
*
|
||||||
* @access public
|
* @access public
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -48,7 +48,6 @@ import com.suisung.mall.shop.product.pojo.vo.FixOrderVo;
|
|||||||
import com.suisung.mall.shop.product.pojo.vo.ProductVo;
|
import com.suisung.mall.shop.product.pojo.vo.ProductVo;
|
||||||
import com.suisung.mall.shop.product.service.*;
|
import com.suisung.mall.shop.product.service.*;
|
||||||
import com.suisung.mall.shop.store.service.*;
|
import com.suisung.mall.shop.store.service.*;
|
||||||
import com.suisung.mall.shop.store.service.impl.ShopStorePrinterLogServiceImpl;
|
|
||||||
import com.suisung.mall.shop.user.mapper.ShopUserCartMapper;
|
import com.suisung.mall.shop.user.mapper.ShopUserCartMapper;
|
||||||
import com.suisung.mall.shop.user.service.ShopUserCartService;
|
import com.suisung.mall.shop.user.service.ShopUserCartService;
|
||||||
import com.suisung.mall.shop.user.service.ShopUserDeliveryAddressService;
|
import com.suisung.mall.shop.user.service.ShopUserDeliveryAddressService;
|
||||||
@ -59,7 +58,6 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
@ -765,10 +763,10 @@ public class ShopUserCartServiceImpl extends BaseServiceImpl<ShopUserCartMapper,
|
|||||||
if (Convert.toBool(is_delivery)) {
|
if (Convert.toBool(is_delivery)) {
|
||||||
data.put("delivery_type_id", delivery_type_id);
|
data.put("delivery_type_id", delivery_type_id);
|
||||||
// 重要:配送运费校验和计算(涉及的东西比较多)
|
// 重要:配送运费校验和计算(涉及的东西比较多)
|
||||||
calTransportFreight(data, district_id);
|
// calTransportFreight(data, district_id);
|
||||||
// logger.debug("checkout 计算配送费时的配送方式:{}",delivery_type_id);
|
// logger.debug("checkout 计算配送费时的配送方式:{}",delivery_type_id);
|
||||||
// 订单地址和金额不在配送范围,抛出异常提示
|
// 订单地址和金额不在配送范围,抛出异常提示
|
||||||
// tryCalTransportFreight(data, district_id,true);
|
tryCalTransportFreight(data, district_id, true);
|
||||||
data.put("has_stock", data.get("can_delivery")); // 是否有货
|
data.put("has_stock", data.get("can_delivery")); // 是否有货
|
||||||
} else {
|
} else {
|
||||||
data.put("can_delivery", true); // 是否可以派送
|
data.put("can_delivery", true); // 是否可以派送
|
||||||
@ -2510,7 +2508,7 @@ public class ShopUserCartServiceImpl extends BaseServiceImpl<ShopUserCartMapper,
|
|||||||
|
|
||||||
// 检查店铺城市和收货地址是否同一城市?
|
// 检查店铺城市和收货地址是否同一城市?
|
||||||
List<Integer> storeDistrictId = Convert.toList(Integer.class, store_row.get("store_district_id"));
|
List<Integer> storeDistrictId = Convert.toList(Integer.class, store_row.get("store_district_id"));
|
||||||
if (canThrow && uAddress!=null && storeDistrictId != null && storeDistrictId.size() > 0 && !CollUtil.contains(storeDistrictId, uAddress.getUd_city_id())) {
|
if (canThrow && uAddress != null && storeDistrictId != null && storeDistrictId.size() > 0 && !CollUtil.contains(storeDistrictId, uAddress.getUd_city_id())) {
|
||||||
throw new ApiException(I18nUtil._("订单不在同一城市,请检查您下单所在店铺的具体位置!"));
|
throw new ApiException(I18nUtil._("订单不在同一城市,请检查您下单所在店铺的具体位置!"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -693,7 +693,7 @@
|
|||||||
</choose>
|
</choose>
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
<!-- 2-物流配送 -->
|
<!-- 2-物流配送订单 -->
|
||||||
<if test="delivery != null and delivery == 2">
|
<if test="delivery != null and delivery == 2">
|
||||||
AND oi.delivery_type_id IN (1,2,3,4,10)
|
AND oi.delivery_type_id IN (1,2,3,4,10)
|
||||||
|
|
||||||
@ -737,15 +737,23 @@
|
|||||||
</where>
|
</where>
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
|
<sql id="mchOrderColumns">
|
||||||
<select id="selectMchOrderPageList" resultMap="MchOrderResult">
|
|
||||||
SELECT
|
SELECT
|
||||||
ob.order_id,
|
ob.order_id,
|
||||||
ob.order_time,
|
ob.order_time,
|
||||||
<!-- 送达时间戳-->
|
<!-- 送达时间戳-->
|
||||||
<if test="delivery!=null and delivery==1">
|
<!-- <if test="delivery!=null and delivery==1 and expireSeconds != null and expireSeconds > 0">-->
|
||||||
oi.order_time + #{expireSeconds}*1000 as arrival_time,
|
<!-- oi.order_time + #{expireSeconds}*1000 as arrival_time,-->
|
||||||
</if>
|
<!-- </if>-->
|
||||||
|
|
||||||
|
<!--送达时间戳-->
|
||||||
|
CASE
|
||||||
|
WHEN oi.delivery_type_id IS NOT NULL AND oi.delivery_type_id = 16 AND #{expireSeconds} IS NOT NULL AND
|
||||||
|
#{expireSeconds} > 0
|
||||||
|
THEN oi.order_time + #{expireSeconds}*1000
|
||||||
|
ELSE oi.order_time + 604800000 <!-- 7天 = 7*24*60*60*1000 = 604800000毫秒 -->
|
||||||
|
END as arrival_time,
|
||||||
|
|
||||||
ob.order_product_amount,
|
ob.order_product_amount,
|
||||||
ob.order_payment_amount,
|
ob.order_payment_amount,
|
||||||
ob.currency_id,
|
ob.currency_id,
|
||||||
@ -806,6 +814,12 @@
|
|||||||
osf.push_time,
|
osf.push_time,
|
||||||
osf.h5_url,
|
osf.h5_url,
|
||||||
osf.feed
|
osf.feed
|
||||||
|
</sql>
|
||||||
|
|
||||||
|
|
||||||
|
<select id="selectMchOrderPageList" resultMap="MchOrderResult">
|
||||||
|
<include refid="mchOrderColumns"/>
|
||||||
|
|
||||||
from shop_order_base ob
|
from shop_order_base ob
|
||||||
join shop_order_info oi on ob.order_id=oi.order_id
|
join shop_order_info oi on ob.order_id=oi.order_id
|
||||||
join shop_order_data od on ob.order_id=od.order_id
|
join shop_order_data od on ob.order_id=od.order_id
|
||||||
@ -832,6 +846,26 @@
|
|||||||
<include refid="mchOrderWhereCondition"/>
|
<include refid="mchOrderWhereCondition"/>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="getMchOrderDetail" resultMap="MchOrderResult">
|
||||||
|
<include refid="mchOrderColumns"/>
|
||||||
|
|
||||||
|
from shop_order_base ob
|
||||||
|
join shop_order_info oi on ob.order_id=oi.order_id
|
||||||
|
join shop_order_data od on ob.order_id=od.order_id
|
||||||
|
join shop_store_base sb on ob.store_id=sb.store_id
|
||||||
|
join shop_order_delivery_address oda on ob.order_id=oda.order_id
|
||||||
|
join shop_order_item oit on ob.order_id=oit.order_id
|
||||||
|
left join shop_store_sf_order osf on ob.order_id=osf.shop_order_id
|
||||||
|
left join shop_product_item spi on oit.product_id=spi.product_id
|
||||||
|
left join shop_base_store_grade sbsg on sb.store_grade_id=sbsg.store_grade_id
|
||||||
|
|
||||||
|
<where>
|
||||||
|
ob.order_id=#{orderId}
|
||||||
|
</where>
|
||||||
|
|
||||||
|
ORDER BY ob.order_id DESC
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
<select id="getWxOrderBaseInfo" resultMap="WxOrderBaseInfoResult">
|
<select id="getWxOrderBaseInfo" resultMap="WxOrderBaseInfoResult">
|
||||||
SELECT a.store_id,
|
SELECT a.store_id,
|
||||||
|
|||||||
21
pom.xml
21
pom.xml
@ -330,10 +330,14 @@
|
|||||||
<!-- <mysql.pwd>J0XivNvAcR14}pA6Cysm.E17</mysql.pwd>-->
|
<!-- <mysql.pwd>J0XivNvAcR14}pA6Cysm.E17</mysql.pwd>-->
|
||||||
<!-- <mysql.driver>com.mysql.cj.jdbc.Driver</mysql.driver>-->
|
<!-- <mysql.driver>com.mysql.cj.jdbc.Driver</mysql.driver>-->
|
||||||
<!-- redis配置 -->
|
<!-- redis配置 -->
|
||||||
<redis.host>114.132.210.208</redis.host>
|
<!-- <redis.host>114.132.210.208</redis.host>-->
|
||||||
|
<!-- <redis.database>15</redis.database>-->
|
||||||
|
<!-- <redis.port>6379</redis.port>-->
|
||||||
|
<!-- <redis.password>Gpff654321</redis.password>-->
|
||||||
|
<redis.host>42.194.196.179</redis.host>
|
||||||
<redis.database>15</redis.database>
|
<redis.database>15</redis.database>
|
||||||
<redis.port>6379</redis.port>
|
<redis.port>6480</redis.port>
|
||||||
<redis.password>Gpff654321</redis.password>
|
<redis.password>hwe9EgqgMAwY</redis.password>
|
||||||
<!-- rabbitmq配置 -->
|
<!-- rabbitmq配置 -->
|
||||||
<rabbitmq.host>114.132.210.208</rabbitmq.host>
|
<rabbitmq.host>114.132.210.208</rabbitmq.host>
|
||||||
<rabbitmq.port>5672</rabbitmq.port>
|
<rabbitmq.port>5672</rabbitmq.port>
|
||||||
@ -479,11 +483,16 @@
|
|||||||
<mysql.user>webprod</mysql.user>
|
<mysql.user>webprod</mysql.user>
|
||||||
<mysql.pwd>v9W2ER6KG9HVtH1mjAytRvdr</mysql.pwd>
|
<mysql.pwd>v9W2ER6KG9HVtH1mjAytRvdr</mysql.pwd>
|
||||||
<mysql.driver>com.mysql.cj.jdbc.Driver</mysql.driver>
|
<mysql.driver>com.mysql.cj.jdbc.Driver</mysql.driver>
|
||||||
<!-- redis配置 -->
|
<!-- redis5配置 -->
|
||||||
|
<!-- <redis.host>172.16.0.11</redis.host>-->
|
||||||
|
<!-- <redis.database>0</redis.database>-->
|
||||||
|
<!-- <redis.port>6379</redis.port>-->
|
||||||
|
<!-- <redis.password>aIqoc08IeuKBd4yl</redis.password>-->
|
||||||
|
<!-- redis7配置 -->
|
||||||
<redis.host>172.16.0.11</redis.host>
|
<redis.host>172.16.0.11</redis.host>
|
||||||
<redis.database>0</redis.database>
|
<redis.database>0</redis.database>
|
||||||
<redis.port>6379</redis.port>
|
<redis.port>6480</redis.port>
|
||||||
<redis.password>aIqoc08IeuKBd4yl</redis.password>
|
<redis.password>hwe9EgqgMAwY</redis.password>
|
||||||
<!-- rabbitmq配置 -->
|
<!-- rabbitmq配置 -->
|
||||||
<rabbitmq.host>172.16.0.11</rabbitmq.host>
|
<rabbitmq.host>172.16.0.11</rabbitmq.host>
|
||||||
<rabbitmq.port>5672</rabbitmq.port>
|
<rabbitmq.port>5672</rabbitmq.port>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user