|
|
@@ -111,14 +111,14 @@ public class TFareFreeRuleServiceImpl extends ServiceImpl<TFareFreeRuleMapper, T
|
|
|
/**
|
|
|
* 查询免车费规则列表
|
|
|
*
|
|
|
- * @param deptId 部门ID
|
|
|
- * @return 免车费规则VO列表
|
|
|
+ * @param techId 技师ID
|
|
|
+ * @return List<FareFreeRuleVo> 免车费规则VO列表
|
|
|
*/
|
|
|
@Override
|
|
|
- public List<FareFreeRuleVo> listFareFreeRules(String deptId) {
|
|
|
+ public List<FareFreeRuleVo> listFareFreeRules(String techId) {
|
|
|
// 1. 查询规则列表
|
|
|
LambdaQueryWrapper<TFareFreeRule> wrapper = new LambdaQueryWrapper<>();
|
|
|
- wrapper.eq(TFareFreeRule::getTechId, deptId)
|
|
|
+ wrapper.eq(TFareFreeRule::getTechId, techId).eq(TFareFreeRule::getEnable, 1)
|
|
|
.orderByDesc(TFareFreeRule::getCreateTime);
|
|
|
List<TFareFreeRule> ruleList = this.list(wrapper);
|
|
|
|
|
|
@@ -129,12 +129,31 @@ public class TFareFreeRuleServiceImpl extends ServiceImpl<TFareFreeRuleMapper, T
|
|
|
|
|
|
// 转换时间段
|
|
|
if (CollectionUtil.isNotEmpty(rule.getTimeRanges())) {
|
|
|
- List<TimeRangeVo> timeRangeVos = rule.getTimeRanges().stream().map(timeRange ->
|
|
|
- TimeRangeVo.builder()
|
|
|
- .startTime(timeRange.getStartTime())
|
|
|
- .endTime(timeRange.getEndTime())
|
|
|
- .build()
|
|
|
- ).collect(Collectors.toList());
|
|
|
+ List<TimeRangeVo> timeRangeVos = new java.util.ArrayList<>();
|
|
|
+ for (Object item : rule.getTimeRanges()) {
|
|
|
+ try {
|
|
|
+ // 处理 JSONObject 类型(Fastjson 反序列化后的类型)
|
|
|
+ if (item instanceof com.alibaba.fastjson.JSONObject) {
|
|
|
+ com.alibaba.fastjson.JSONObject json = (com.alibaba.fastjson.JSONObject) item;
|
|
|
+ TimeRangeVo timeRangeVo = TimeRangeVo.builder()
|
|
|
+ .startTime(json.getString("startTime"))
|
|
|
+ .endTime(json.getString("endTime"))
|
|
|
+ .build();
|
|
|
+ timeRangeVos.add(timeRangeVo);
|
|
|
+ }
|
|
|
+ // 处理 TimeRange 类型(正常的类型)
|
|
|
+ else if (item instanceof TFareFreeRule.TimeRange) {
|
|
|
+ TFareFreeRule.TimeRange timeRange = (TFareFreeRule.TimeRange) item;
|
|
|
+ TimeRangeVo timeRangeVo = TimeRangeVo.builder()
|
|
|
+ .startTime(timeRange.getStartTime())
|
|
|
+ .endTime(timeRange.getEndTime())
|
|
|
+ .build();
|
|
|
+ timeRangeVos.add(timeRangeVo);
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error("转换时间段失败,item类型:{},内容:{}", item.getClass().getName(), item, e);
|
|
|
+ }
|
|
|
+ }
|
|
|
vo.setTimeRanges(timeRangeVos);
|
|
|
}
|
|
|
|
|
|
@@ -142,12 +161,11 @@ public class TFareFreeRuleServiceImpl extends ServiceImpl<TFareFreeRuleMapper, T
|
|
|
if (StringUtils.isNotBlank(rule.getProjectId())) {
|
|
|
String projectNames = "";
|
|
|
TXiangmu xiangmu = xiangmuService.getById(rule.getProjectId());
|
|
|
- if (xiangmu != null && StringUtils.isNotBlank(xiangmu.getcTitle())) {
|
|
|
- projectNames = xiangmu.getcTitle();
|
|
|
- }
|
|
|
+ if (xiangmu != null && StringUtils.isNotBlank(xiangmu.getcTitle())) {
|
|
|
+ projectNames = xiangmu.getcTitle();
|
|
|
+ }
|
|
|
vo.setProjectNames(projectNames.isEmpty() ? null : projectNames);
|
|
|
}
|
|
|
-
|
|
|
return vo;
|
|
|
}).collect(Collectors.toList());
|
|
|
}
|