refactor(date): 使用 LocalDateTime 替代 Date
- 在多个控制器和服务中,将 Date 替换为 LocalDateTime - 更新日期格式化相关代码,以适应 LocalDateTime - 删除了一些未使用的日期工具类导入
This commit is contained in:
@@ -1,7 +1,5 @@
|
||||
package com.gxwebsoft.bszx.controller;
|
||||
|
||||
import cn.hutool.core.date.DateField;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.NumberUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
@@ -37,6 +35,7 @@ import org.springframework.web.bind.annotation.*;
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
|
||||
@@ -28,6 +28,7 @@ import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.*;
|
||||
|
||||
import java.util.concurrent.TimeUnit;
|
||||
@@ -222,7 +223,7 @@ public class CmsWebsiteController extends BaseController {
|
||||
// 是否过期 -1已过期 大于0 未过期
|
||||
website.setExpired(website.getExpirationTime().compareTo(now));
|
||||
// 剩余天数
|
||||
website.setExpiredDays((int) java.time.temporal.ChronoUnit.DAYS.between(now, website.getExpirationTime()));
|
||||
website.setExpiredDays(java.time.temporal.ChronoUnit.DAYS.between(now, website.getExpirationTime()));
|
||||
|
||||
redisUtil.set(key, website, 1L, TimeUnit.DAYS);
|
||||
return success(website);
|
||||
|
||||
@@ -26,6 +26,7 @@ import org.springframework.util.CollectionUtils;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@@ -19,7 +19,7 @@ import java.util.Map;
|
||||
|
||||
/**
|
||||
* 微信通知测试控制器
|
||||
*
|
||||
*
|
||||
* @author 科技小王子
|
||||
* @since 2025-06-15
|
||||
*/
|
||||
@@ -37,39 +37,39 @@ public class WxNotificationTestController extends BaseController {
|
||||
*/
|
||||
@Operation(summary = "测试发送订单确认通知")
|
||||
@PostMapping("/test-order-notification")
|
||||
public ApiResult<?> testOrderNotification(@RequestParam String openId,
|
||||
public ApiResult<?> testOrderNotification(@RequestParam String openId,
|
||||
@RequestParam String orderNo,
|
||||
@RequestParam(required = false) String templateId) {
|
||||
try {
|
||||
User loginUser = getLoginUser();
|
||||
Integer tenantId = loginUser != null ? loginUser.getTenantId() : 0;
|
||||
|
||||
|
||||
// 构建模板消息请求
|
||||
TemplateMessageRequest request = new TemplateMessageRequest();
|
||||
request.setToUser(openId);
|
||||
request.setTemplateId(templateId != null ? templateId : "your_order_template_id");
|
||||
request.setUrl("https://your-domain.com/order/" + orderNo);
|
||||
request.setTopColor("#173177");
|
||||
|
||||
|
||||
// 构建模板数据
|
||||
Map<String, TemplateMessageRequest.TemplateDataItem> data = new HashMap<>();
|
||||
data.put("first", new TemplateMessageRequest.TemplateDataItem("您的订单已确认", "#173177"));
|
||||
data.put("keyword1", new TemplateMessageRequest.TemplateDataItem(orderNo, "#173177"));
|
||||
data.put("keyword2", new TemplateMessageRequest.TemplateDataItem(
|
||||
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()), "#173177"));
|
||||
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(LocalDateTime.now()), "#173177"));
|
||||
data.put("remark", new TemplateMessageRequest.TemplateDataItem("感谢您的使用,如有疑问请联系客服!", "#173177"));
|
||||
|
||||
|
||||
request.setData(data);
|
||||
|
||||
|
||||
// 发送消息
|
||||
boolean success = wxNotificationService.sendTemplateMessage(tenantId, request);
|
||||
|
||||
|
||||
if (success) {
|
||||
return success("订单确认通知发送成功");
|
||||
} else {
|
||||
return fail("订单确认通知发送失败");
|
||||
}
|
||||
|
||||
|
||||
} catch (Exception e) {
|
||||
log.error("测试发送订单确认通知失败", e);
|
||||
return fail("发送失败:" + e.getMessage());
|
||||
@@ -88,30 +88,30 @@ public class WxNotificationTestController extends BaseController {
|
||||
try {
|
||||
User loginUser = getLoginUser();
|
||||
Integer tenantId = loginUser != null ? loginUser.getTenantId() : 0;
|
||||
|
||||
|
||||
TemplateMessageRequest request = new TemplateMessageRequest();
|
||||
request.setToUser(openId);
|
||||
request.setTemplateId(templateId != null ? templateId : "your_payment_template_id");
|
||||
request.setUrl("https://your-domain.com/order/" + orderNo);
|
||||
|
||||
|
||||
Map<String, TemplateMessageRequest.TemplateDataItem> data = new HashMap<>();
|
||||
data.put("first", new TemplateMessageRequest.TemplateDataItem("支付成功通知", "#173177"));
|
||||
data.put("keyword1", new TemplateMessageRequest.TemplateDataItem(orderNo, "#173177"));
|
||||
data.put("keyword2", new TemplateMessageRequest.TemplateDataItem("¥" + amount, "#FF0000"));
|
||||
data.put("keyword3", new TemplateMessageRequest.TemplateDataItem(
|
||||
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()), "#173177"));
|
||||
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(LocalDateTime.now()), "#173177"));
|
||||
data.put("remark", new TemplateMessageRequest.TemplateDataItem("您的订单已支付成功,我们将尽快为您处理!", "#173177"));
|
||||
|
||||
|
||||
request.setData(data);
|
||||
|
||||
|
||||
boolean success = wxNotificationService.sendTemplateMessage(tenantId, request);
|
||||
|
||||
|
||||
if (success) {
|
||||
return success("支付成功通知发送成功");
|
||||
} else {
|
||||
return fail("支付成功通知发送失败");
|
||||
}
|
||||
|
||||
|
||||
} catch (Exception e) {
|
||||
log.error("测试发送支付成功通知失败", e);
|
||||
return fail("发送失败:" + e.getMessage());
|
||||
@@ -130,30 +130,30 @@ public class WxNotificationTestController extends BaseController {
|
||||
try {
|
||||
User loginUser = getLoginUser();
|
||||
Integer tenantId = loginUser != null ? loginUser.getTenantId() : 0;
|
||||
|
||||
|
||||
SubscribeMessageRequest request = new SubscribeMessageRequest();
|
||||
request.setToUser(openId);
|
||||
request.setTemplateId(templateId != null ? templateId : "your_subscribe_template_id");
|
||||
request.setPage("pages/notification/detail");
|
||||
request.setMiniprogramState("formal");
|
||||
request.setLang("zh_CN");
|
||||
|
||||
|
||||
Map<String, SubscribeMessageRequest.SubscribeDataItem> data = new HashMap<>();
|
||||
data.put("thing1", new SubscribeMessageRequest.SubscribeDataItem(title));
|
||||
data.put("thing2", new SubscribeMessageRequest.SubscribeDataItem(content));
|
||||
data.put("time3", new SubscribeMessageRequest.SubscribeDataItem(
|
||||
new SimpleDateFormat("yyyy年MM月dd日 HH:mm").format(new Date())));
|
||||
|
||||
new SimpleDateFormat("yyyy年MM月dd日 HH:mm").format(LocalDateTime.now())));
|
||||
|
||||
request.setData(data);
|
||||
|
||||
|
||||
boolean success = wxNotificationService.sendSubscribeMessage(tenantId, request);
|
||||
|
||||
|
||||
if (success) {
|
||||
return success("订阅消息发送成功");
|
||||
} else {
|
||||
return fail("订阅消息发送失败");
|
||||
}
|
||||
|
||||
|
||||
} catch (Exception e) {
|
||||
log.error("测试发送订阅消息失败", e);
|
||||
return fail("发送失败:" + e.getMessage());
|
||||
@@ -171,30 +171,30 @@ public class WxNotificationTestController extends BaseController {
|
||||
try {
|
||||
User loginUser = getLoginUser();
|
||||
Integer tenantId = loginUser != null ? loginUser.getTenantId() : 0;
|
||||
|
||||
|
||||
TemplateMessageRequest request = new TemplateMessageRequest();
|
||||
request.setToUser(openId);
|
||||
request.setTemplateId(templateId != null ? templateId : "your_system_template_id");
|
||||
request.setTopColor("#173177");
|
||||
|
||||
|
||||
Map<String, TemplateMessageRequest.TemplateDataItem> data = new HashMap<>();
|
||||
data.put("first", new TemplateMessageRequest.TemplateDataItem("系统通知", "#173177"));
|
||||
data.put("keyword1", new TemplateMessageRequest.TemplateDataItem("系统消息", "#173177"));
|
||||
data.put("keyword2", new TemplateMessageRequest.TemplateDataItem(message, "#173177"));
|
||||
data.put("keyword3", new TemplateMessageRequest.TemplateDataItem(
|
||||
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()), "#173177"));
|
||||
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(LocalDateTime.now()), "#173177"));
|
||||
data.put("remark", new TemplateMessageRequest.TemplateDataItem("如有疑问,请联系客服。", "#173177"));
|
||||
|
||||
|
||||
request.setData(data);
|
||||
|
||||
|
||||
boolean success = wxNotificationService.sendTemplateMessage(tenantId, request);
|
||||
|
||||
|
||||
if (success) {
|
||||
return success("系统通知发送成功");
|
||||
} else {
|
||||
return fail("系统通知发送失败");
|
||||
}
|
||||
|
||||
|
||||
} catch (Exception e) {
|
||||
log.error("测试发送系统通知失败", e);
|
||||
return fail("发送失败:" + e.getMessage());
|
||||
@@ -210,10 +210,10 @@ public class WxNotificationTestController extends BaseController {
|
||||
try {
|
||||
User loginUser = getLoginUser();
|
||||
Integer tenantId = loginUser != null ? loginUser.getTenantId() : 0;
|
||||
|
||||
|
||||
String response = wxNotificationService.getTemplateList(tenantId);
|
||||
return success("获取成功", response);
|
||||
|
||||
|
||||
} catch (Exception e) {
|
||||
log.error("获取模板列表失败", e);
|
||||
return fail("获取失败:" + e.getMessage());
|
||||
|
||||
@@ -95,7 +95,7 @@ public class HjmViolationServiceImpl extends ServiceImpl<HjmViolationMapper, Hjm
|
||||
map.put("car_number1", new TemplateMessageRequest.TemplateDataItem(item.getCode()));
|
||||
// 获取当前时间,格式2024年1月1号 10:20
|
||||
map.put("time2", new TemplateMessageRequest.TemplateDataItem(
|
||||
new SimpleDateFormat("yyyy年M月d日 HH:mm").format(new Date()), "#173177")
|
||||
new SimpleDateFormat("yyyy年M月d日 HH:mm").format(LocalDateTime.now()), "#173177")
|
||||
);
|
||||
System.out.println("map = " + map);
|
||||
templateMessageRequest.setData(map);
|
||||
|
||||
@@ -1,74 +0,0 @@
|
||||
package com.gxwebsoft.house.controller;
|
||||
|
||||
import com.gxwebsoft.common.core.web.ApiResult;
|
||||
import com.gxwebsoft.common.core.web.BaseController;
|
||||
import com.gxwebsoft.house.entity.HouseInfo;
|
||||
import com.gxwebsoft.house.service.HouseInfoService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 房源测试数据控制器
|
||||
*
|
||||
* @author 科技小王子
|
||||
* @since 2025-08-07
|
||||
*/
|
||||
@Tag(name = "房源测试数据管理")
|
||||
@RestController
|
||||
@RequestMapping("/api/house/test-data")
|
||||
public class HouseTestDataController extends BaseController {
|
||||
|
||||
@Resource
|
||||
private HouseInfoService houseInfoService;
|
||||
|
||||
@Operation(summary = "创建测试数据")
|
||||
@PostMapping("/create")
|
||||
public ApiResult<?> createTestData() {
|
||||
try {
|
||||
// 创建5个测试房源,价格不同
|
||||
createTestHouse("碧园大厦B", "223", new BigDecimal("8920"), 10058);
|
||||
createTestHouse("碧园大厦B", "155", new BigDecimal("6200"), 10058);
|
||||
createTestHouse("碧园大厦B", "92", new BigDecimal("3680"), 10058);
|
||||
createTestHouse("龙光国际A", "99", new BigDecimal("4455"), 10058);
|
||||
createTestHouse("万达广场C", "120", new BigDecimal("5500"), 10058);
|
||||
|
||||
return success("测试数据创建成功!");
|
||||
} catch (Exception e) {
|
||||
return fail("创建测试数据失败:" + e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
private void createTestHouse(String title, String extent, BigDecimal monthlyRent, Integer tenantId) {
|
||||
HouseInfo house = new HouseInfo();
|
||||
house.setHouseTitle(title);
|
||||
house.setExtent(extent);
|
||||
house.setMonthlyRent(monthlyRent);
|
||||
house.setRent(monthlyRent);
|
||||
house.setTenantId(tenantId);
|
||||
house.setStatus(0); // 通过状态
|
||||
house.setDeleted(0);
|
||||
house.setRecommend(0);
|
||||
house.setUserId(1);
|
||||
house.setCreateTime(new Date());
|
||||
house.setUpdateTime(new Date());
|
||||
house.setCityByHouse("南宁");
|
||||
house.setHouseType("办公室");
|
||||
house.setLeaseMethod("整租");
|
||||
house.setFloor("10层");
|
||||
house.setRealName("测试用户");
|
||||
house.setPhone("13800138000");
|
||||
house.setProvince("广西");
|
||||
house.setCity("南宁");
|
||||
house.setRegion("青秀区");
|
||||
house.setAddress("测试地址");
|
||||
|
||||
houseInfoService.save(house);
|
||||
}
|
||||
}
|
||||
@@ -1,20 +1,18 @@
|
||||
package com.gxwebsoft.house.service.impl;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.gxwebsoft.house.entity.HouseInfo;
|
||||
import com.gxwebsoft.house.mapper.HouseViewsLogMapper;
|
||||
import com.gxwebsoft.house.service.HouseViewsLogService;
|
||||
import com.github.yulichang.base.MPJBaseServiceImpl;
|
||||
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
||||
import com.gxwebsoft.house.entity.HouseViewsLog;
|
||||
import com.gxwebsoft.house.param.HouseViewsLogParam;
|
||||
import com.gxwebsoft.common.core.web.PageParam;
|
||||
import com.gxwebsoft.common.core.web.PageResult;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
||||
@@ -40,6 +40,7 @@ import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
Reference in New Issue
Block a user