From e24392c5afa59752194ac2f8ab56947e20c861aa Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 27 九月 2024 10:41:24 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile
---
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TVipOrderServiceImpl.java | 7 ++
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TShoppingOrder.java | 2
ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TShoppingOrderMapper.xml | 1
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java | 1
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java | 120 ++++++++++++++++++++++++++++++++++++++++
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TVipOrderController.java | 2
ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TVipOrderMapper.xml | 2
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java | 19 ++++++
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TVipOrder.java | 3 +
ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TGoodsMapper.xml | 3 +
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/dto/GoodsDTO.java | 2
11 files changed, 160 insertions(+), 2 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TShoppingOrder.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TShoppingOrder.java
index 44c70a3..b1e370b 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TShoppingOrder.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TShoppingOrder.java
@@ -105,7 +105,7 @@
@TableField("remark")
private String remark;
- @ApiModelProperty(value = "状态(1=待发货,2=待收货,3=已完成,4=已取消)")
+ @ApiModelProperty(value = "状态(1=待发货,2=待收货,3=已完成,4=已取消 5=交易关闭)")
@TableField("status")
private Integer status;
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TVipOrder.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TVipOrder.java
index 541c529..beebeea 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TVipOrder.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TVipOrder.java
@@ -101,5 +101,8 @@
@ApiModelProperty(value = "userUid")
@TableField(exist = false)
private String userUid;
+ @ApiModelProperty(value = "购买用户")
+ @TableField(exist = false)
+ private String userPhone;
}
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/dto/GoodsDTO.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/dto/GoodsDTO.java
index ea83f00..5f79b6b 100644
--- a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/dto/GoodsDTO.java
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/dto/GoodsDTO.java
@@ -14,6 +14,6 @@
private String name;
@ApiModelProperty(value = "1现金购买 2积分兑换 ")
private Integer type;
- @ApiModelProperty(value = "1全部 2已售罄 ")
+ @ApiModelProperty(value = "1全部 2已售罄 3已下架")
private Integer otherState;
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TVipOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TVipOrderController.java
index 909cf73..16b02cc 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TVipOrderController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TVipOrderController.java
@@ -70,6 +70,8 @@
@PostMapping("/addVipOrder")
@ApiOperation(value = "添加会员订单", tags = {"管理后台-会员订单"})
public R<Long> addVipOrder(@RequestBody TVipOrder dto) {
+ List<TVipOrder> list = vipOrderService.lambdaQuery().eq(TVipOrder::getCode, dto.getCode()).list();
+ if (!list.isEmpty())return R.fail("订单编号已存在");
vipOrderService.saveOrUpdate(dto);
return R.ok(dto.getId());
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java
index 36e040b..30d8358 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java
@@ -584,6 +584,7 @@
if (data1!=null){
tShoppingOrder.setName(data1.getName());
}
+ tShoppingOrder.setStatus(3);
break;
}
if (tShoppingOrder.getAppUserId() != null){
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TVipOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TVipOrderServiceImpl.java
index 2e2f137..0ed6754 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TVipOrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TVipOrderServiceImpl.java
@@ -3,6 +3,8 @@
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.account.api.dto.GiveVipDto;
+import com.ruoyi.account.api.feignClient.AppUserClient;
+import com.ruoyi.account.api.model.TAppUser;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.order.api.model.TShoppingOrder;
import com.ruoyi.order.api.model.TVipOrder;
@@ -33,6 +35,8 @@
@Resource
private VipClient vipClient;
+ @Resource
+ private AppUserClient appUserClient;
@Override
public PageInfo<TVipOrder> pageList(VipShoppingOrderQuery query) {
String startTime1 = null;
@@ -50,9 +54,12 @@
tVipOrder.setUid(tVipOrder.getId().toString());
tVipOrder.setUserUid(tVipOrder.getAppUserId().toString());
TVip data = vipClient.getInfo(tVipOrder.getVipId()).getData();
+
if (data!=null){
tVipOrder.setName(data.getName());
}
+ TAppUser data1 = appUserClient.getUserById(tVipOrder.getAppUserId()).getData();
+ if (data1!=null)tVipOrder.setUserPhone(data1.getPhone());
}
pageInfo.setRecords(list);
return pageInfo;
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java
new file mode 100644
index 0000000..a79ee1a
--- /dev/null
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java
@@ -0,0 +1,120 @@
+package com.ruoyi.order.util.task;
+
+import com.alibaba.fastjson2.util.UUIDUtils;
+import com.alibaba.nacos.common.utils.UuidUtils;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.ruoyi.chargingPile.api.feignClient.SiteClient;
+import com.ruoyi.chargingPile.api.model.Site;
+import com.ruoyi.order.api.model.TChargingBill;
+import com.ruoyi.order.service.TChargingBillService;
+import org.apache.logging.log4j.core.util.UuidUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Random;
+import java.util.stream.Collectors;
+
+/**
+ * @author zhibing.pu
+ * @date 2023/7/11 8:39
+ */
+@Component
+public class TaskUtil {
+
+ @Resource
+ private TChargingBillService chargingBillService;
+ @Resource
+ private SiteClient siteClient;
+
+ public static void main(String[] args) {
+ LocalDate firstDayOfLastMonth = LocalDate.now().minusMonths(1).
+ withDayOfMonth(2);
+ String string = firstDayOfLastMonth.toString();
+ // 将-替换为空字符串
+ string = string.replace("-", "");
+ System.err.println(string);
+ }
+ // 每月2号凌晨12点执行的定时任务
+ @Scheduled(cron = "0 0 0 2 * ?")
+ public void taskMonth() {
+ try {
+ // 获取上个月的开始和结束日期
+ LocalDate firstDayOfLastMonth = LocalDate.now().minusMonths(1).
+ withDayOfMonth(2);
+ String string = firstDayOfLastMonth.toString();
+ // 将-替换为空字符串
+ string = string.replace("-", "");
+ // 生成一次全站订单
+ TChargingBill tChargingBill = new TChargingBill();
+ // 订单生成规则JSD+20231201(账单所属月份)+1131304205(随机10位数)+001(当月账单序号,每月重置)
+ Random random = new Random();
+ String randomDigits = random.ints(10, 0, 10) // 生成10个随机数字,范围在0-9
+ .mapToObj(String::valueOf)
+ .collect(Collectors.joining()); // 将其连接成一个字符串
+ tChargingBill.setCode("JSD"+string+randomDigits+"001" );
+ tChargingBill.setType(1);
+ tChargingBill.setBillTime(LocalDateTime.now());
+ tChargingBill.setStatus(1);
+ tChargingBill.setOrderState(2);
+ chargingBillService.save(tChargingBill);
+ // 每月二号给每个站点生成上月账单
+ List<Integer> collect = siteClient.getSiteAll().getData().stream().map(Site::getId).collect(Collectors.toList());
+ List<TChargingBill> tChargingBills = new ArrayList<>();
+ for (int i = 1; i <= collect.size(); i++) {
+ TChargingBill tChargingBill1 = new TChargingBill();
+ Random random1 = new Random();
+ String randomDigits1 = random1.ints(10, 0, 10) // 生成10个随机数字,范围在0-9
+ .mapToObj(String::valueOf)
+ .collect(Collectors.joining()); // 将其连接成一个字符串
+ tChargingBill1.setCode("JSD"+string+randomDigits1+i );
+ tChargingBill1.setType(2);
+ tChargingBill1.setSiteId(collect.get(i));
+ tChargingBill1.setBillTime(LocalDateTime.now());
+ tChargingBill1.setStatus(1);
+ tChargingBill1.setOrderState(2);
+ tChargingBills.add(tChargingBill1);
+ }
+ if (!tChargingBills.isEmpty())chargingBillService.saveBatch(tChargingBills);
+
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ // 每个月最后一天23点执行的定时任务
+ @Scheduled(cron = "0 0 23 L * ?")
+ public void taskLastDay() {
+ try {
+ // 获取上个月的开始和结束日期
+ LocalDate firstDayOfLastMonth = LocalDate.now().minusMonths(1).
+ withDayOfMonth(1);
+ LocalDate lastDayOfLastMonth = LocalDate.now().minusMonths(1).
+ withDayOfMonth(firstDayOfLastMonth.lengthOfMonth());
+ // 将 LocalDate 转换为 LocalDateTime,并设定时间为一天的开始
+ LocalDateTime startDateTime = firstDayOfLastMonth.atStartOfDay();
+ LocalDateTime endDateTime = lastDayOfLastMonth.atTime(23, 59, 59); // 设定到最后一秒
+ // 构建查询条件
+ LambdaQueryWrapper<TChargingBill> queryWrapper = new LambdaQueryWrapper<>();
+ queryWrapper.ge(TChargingBill::getBillTime,
+ Date.from(startDateTime.atZone(ZoneId.systemDefault()).toInstant()))
+ .le(TChargingBill::getBillTime,
+ Date.from(endDateTime.atZone(ZoneId.systemDefault()).toInstant())); // 使用 le 包括最后一天的记录
+ List<TChargingBill> list = chargingBillService.list(queryWrapper);
+ for (TChargingBill tChargingBill : list) {
+ tChargingBill.setStatus(2);
+ }
+ chargingBillService.updateBatchById(list);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+}
diff --git a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TShoppingOrderMapper.xml b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TShoppingOrderMapper.xml
index accb6d6..9ca89fb 100644
--- a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TShoppingOrderMapper.xml
+++ b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TShoppingOrderMapper.xml
@@ -255,6 +255,7 @@
</if>
and t1.payment_status = 2
AND t1.del_flag = ${@com.ruoyi.common.core.enums.DelFlagEnum@NO.getCode()}
+ order by t1.create_time desc
</select>
<select id="sixBefore" resultType="com.ruoyi.order.dto.SixShopDto">
SELECT
diff --git a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TVipOrderMapper.xml b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TVipOrderMapper.xml
index 70127f8..ca0b516 100644
--- a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TVipOrderMapper.xml
+++ b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TVipOrderMapper.xml
@@ -44,7 +44,9 @@
<if test="startTime1 != null and startTime1!=''">
and (t1.create_time between #{startTime1} and #{startTime2}
</if>
+ and t1.payment_status = 2
AND t1.del_flag = ${@com.ruoyi.common.core.enums.DelFlagEnum@NO.getCode()}
+ order by t1.create_time desc
</select>
<select id="sixBefore" resultType="com.ruoyi.order.dto.SixVipDto">
SELECT
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java
index 07d4925..9a00b7d 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java
@@ -35,6 +35,7 @@
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.time.LocalDateTime;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
@@ -180,6 +181,24 @@
public AjaxResult<PageInfo<TCoupon>> pageList(@RequestBody CouponQuery dto) {
return AjaxResult.ok(tCouponService.pageList(dto));
}
+ @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券列表分页查询")
+ @PostMapping(value = "/pageList3")
+ public AjaxResult<List<TCoupon>> pageList() {
+ List<TCoupon> tCoupons = new ArrayList<>();
+
+ List<TCoupon> list = tCouponService.lambdaQuery().eq(TCoupon::getStatus, 1)
+ .orderByDesc(TCoupon::getCreateTime).list();
+ for (TCoupon tCoupon : list) {
+ if (tCoupon.getValidityPeriodMode()==1){
+ if (LocalDateTime.now().isBefore(tCoupon.getEndTime())){
+ tCoupons.add(tCoupon);
+ }
+ }else{
+ tCoupons.add(tCoupon);
+ }
+ }
+ return AjaxResult.ok(tCoupons);
+ }
/**
* 小程序远程调用 获取优惠券信息
diff --git a/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TGoodsMapper.xml b/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TGoodsMapper.xml
index fb2632b..8cb9cb5 100644
--- a/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TGoodsMapper.xml
+++ b/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TGoodsMapper.xml
@@ -45,6 +45,9 @@
<if test="req.otherState != null and req.otherState == 2">
AND inventory = 0
</if>
+ <if test="req.otherState != null and req.otherState ==3">
+ AND status = #{req.status}
+ </if>
AND del_flag = ${@com.ruoyi.common.core.enums.DelFlagEnum@NO.getCode()}
</where>
ORDER BY create_time DESC
--
Gitblit v1.7.1