超市优化
This commit is contained in:
@ -1,10 +1,12 @@
|
||||
package cn.iocoder.yudao.module.member.controller.admin.storeorder.vo;
|
||||
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||
@ -40,4 +42,5 @@ public class StoreOrderPageReqVO extends PageParam {
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
private LocalDateTime[] createTime;
|
||||
|
||||
private Integer status;
|
||||
}
|
@ -10,6 +10,7 @@ import cn.iocoder.yudao.module.member.controller.app.storeorder.vo.AppStoreOrder
|
||||
import cn.iocoder.yudao.module.member.controller.app.storeorder.vo.AppStoreOrderVO;
|
||||
import cn.iocoder.yudao.module.member.controller.app.storeorder.vo.CardDto;
|
||||
import cn.iocoder.yudao.module.member.dal.dataobject.storeorder.StoreOrderDO;
|
||||
import cn.iocoder.yudao.module.member.enums.StoreOrderStatusEnum;
|
||||
import cn.iocoder.yudao.module.member.service.async.MemberAsyncService;
|
||||
import cn.iocoder.yudao.module.member.service.storeorder.StoreOrderService;
|
||||
import cn.iocoder.yudao.module.member.service.storeorderdetail.StoreOrderDetailService;
|
||||
@ -48,6 +49,9 @@ public class AppStoreOrderController {
|
||||
@GetMapping("/page")
|
||||
@Operation(summary = "获得商品订单分页")
|
||||
public CommonResult<PageResult<StoreOrderRespVO>> getStoreOrderPage(@Valid StoreOrderPageReqVO pageReqVO) {
|
||||
if(pageReqVO.getUserId()==null){
|
||||
pageReqVO.setStatus(StoreOrderStatusEnum.COMPLETE.getCode());
|
||||
}
|
||||
PageResult<StoreOrderDO> pageResult = storeOrderService.getStoreOrderPage(pageReqVO);
|
||||
PageResult<StoreOrderRespVO> bean = BeanUtils.toBean(pageResult, StoreOrderRespVO.class);
|
||||
//处理订单详情
|
||||
|
@ -1,16 +1,17 @@
|
||||
package cn.iocoder.yudao.module.member.dal.mysql.storeorder;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cn.iocoder.yudao.module.member.controller.admin.storeorder.vo.StoreOrderPageReqVO;
|
||||
import cn.iocoder.yudao.module.member.controller.admin.storeorder.vo.StoreOrderPageVO;
|
||||
import cn.iocoder.yudao.module.member.dal.dataobject.storeorder.StoreOrderDO;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import cn.iocoder.yudao.module.member.controller.admin.storeorder.vo.*;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 商品订单 Mapper
|
||||
*
|
||||
@ -28,6 +29,7 @@ public interface StoreOrderMapper extends BaseMapperX<StoreOrderDO> {
|
||||
.eqIfPresent(StoreOrderDO::getUuid, reqVO.getUuid())
|
||||
.eqIfPresent(StoreOrderDO::getTotalPrice, reqVO.getTotalPrice())
|
||||
.eqIfPresent(StoreOrderDO::getUserId, reqVO.getUserId())
|
||||
.eqIfPresent(StoreOrderDO::getStatus, reqVO.getStatus())
|
||||
.betweenIfPresent(StoreOrderDO::getCreateTime, reqVO.getCreateTime())
|
||||
.orderByDesc(StoreOrderDO::getOrderId));
|
||||
}
|
||||
|
@ -0,0 +1,54 @@
|
||||
package cn.iocoder.yudao.module.member.job;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.iocoder.yudao.framework.quartz.core.handler.JobHandler;
|
||||
import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
|
||||
import cn.iocoder.yudao.module.member.controller.admin.storegoodsinventory.vo.AddReqVO;
|
||||
import cn.iocoder.yudao.module.member.dal.dataobject.storeorder.StoreOrderDO;
|
||||
import cn.iocoder.yudao.module.member.service.async.MemberAsyncService;
|
||||
import cn.iocoder.yudao.module.member.service.storeorder.StoreOrderService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @Author:qjq 计算门店流水
|
||||
* @Date:2024/4/24 下午3:22
|
||||
*/
|
||||
@Component
|
||||
@Slf4j
|
||||
public class StoreOrderCancelJob implements JobHandler {
|
||||
@Resource
|
||||
private StoreOrderService storeOrderService;
|
||||
@Resource
|
||||
private MemberAsyncService memberAsyncService;
|
||||
/**
|
||||
* 执行任务
|
||||
*
|
||||
* @param param 参数
|
||||
* @return 结果
|
||||
* @throws Exception 异常
|
||||
*/
|
||||
@Override
|
||||
@TenantIgnore
|
||||
public String execute(String param) throws Exception {
|
||||
try {
|
||||
List<StoreOrderDO> storeOrderDOS = storeOrderService.selectPayOrder();
|
||||
if(CollectionUtil.isNotEmpty(storeOrderDOS)){
|
||||
List<Integer> collect = storeOrderDOS.stream().map(StoreOrderDO::getOrderId).collect(Collectors.toList());
|
||||
for (Integer orderId:collect){
|
||||
AddReqVO cancel = storeOrderService.cancel(orderId);
|
||||
memberAsyncService.batchRecord(cancel);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
} catch (Exception e) {
|
||||
return "订单取消失败";
|
||||
}
|
||||
return "订单取消成功";
|
||||
}
|
||||
}
|
@ -91,4 +91,6 @@ public interface StoreOrderService {
|
||||
AddReqVO cancel(Integer orderId);
|
||||
|
||||
Long refund(Integer orderId);
|
||||
|
||||
List<StoreOrderDO> selectPayOrder();
|
||||
}
|
@ -41,6 +41,7 @@ import cn.iocoder.yudao.module.member.service.user.MemberUserService;
|
||||
import cn.iocoder.yudao.module.member.util.QRCodeWithJWTUtil;
|
||||
import cn.iocoder.yudao.module.system.api.cashregisterinfo.CashregisterinfoApi;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import org.springframework.data.redis.core.StringRedisTemplate;
|
||||
import org.springframework.stereotype.Service;
|
||||
@ -529,6 +530,12 @@ public class StoreOrderServiceImpl implements StoreOrderService {
|
||||
return storeRefundService.createStoreRefund(storeRefundSaveReqVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<StoreOrderDO> selectPayOrder() {
|
||||
return storeOrderMapper.selectList(Wrappers.<StoreOrderDO>lambdaQuery()
|
||||
.eq(StoreOrderDO::getStatus,StoreOrderStatusEnum.PAY.getCode()));
|
||||
}
|
||||
|
||||
public void test() {
|
||||
//计算金额
|
||||
//if (total.compareTo(wxAmount) <= 0) {
|
||||
|
@ -0,0 +1,55 @@
|
||||
package cn.iocoder.yudao.module.member.util;
|
||||
|
||||
import cn.hutool.crypto.digest.MD5;
|
||||
import cn.hutool.http.HttpUtil;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author zt
|
||||
* @description <description class purpose>
|
||||
* @since 2024/11/13
|
||||
*/
|
||||
|
||||
public class SmsUtil {
|
||||
|
||||
private static final String USER = "yclh";
|
||||
private static final String PASS = "yclh6666";
|
||||
private static final String USERID = "1694";
|
||||
private static final String URL= "http://120.79.149.129:7799/v2sms.aspx";
|
||||
|
||||
|
||||
public static void sendMsg(String mobile,String content){
|
||||
LocalDateTime now = LocalDateTime.now();
|
||||
|
||||
// 定义时间格式
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMddHHmmss");
|
||||
|
||||
// 将当前时间按照指定格式进行格式化
|
||||
String time = now.format(formatter);
|
||||
String sign = createSign(time);
|
||||
Map<String, Object> param = new HashMap<>();
|
||||
param.put("action","send");
|
||||
param.put("userid",USERID);
|
||||
param.put("timestamp",time);
|
||||
param.put("sign",sign);
|
||||
param.put("mobile",mobile);
|
||||
param.put("content",content);
|
||||
param.put("sendTime",null);
|
||||
param.put("extno",null);
|
||||
String s = HttpUtil.post(URL, param);
|
||||
System.out.println(s);
|
||||
}
|
||||
|
||||
|
||||
public static String createSign(String timestamp){
|
||||
return MD5.create().digestHex(USER+PASS+timestamp);
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
sendMsg("15723110242","这是一条测试短信2");
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user