diff --git a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/controller/EbikeBikeInfoController.java b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/controller/EbikeBikeInfoController.java index cae75994..524c9168 100644 --- a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/controller/EbikeBikeInfoController.java +++ b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/controller/EbikeBikeInfoController.java @@ -832,5 +832,16 @@ public class EbikeBikeInfoController { // 调用服务层方法,执行完成投放操作 return ebikeBikeInfoService.completeDeployment(request); } + /** + * 获取工单列表 + * + * @param request 获取工单列表请求参数,如分页信息、筛选条件等 + * @return 返回工单列表数据 + */ + @PostMapping("getWorkOrderList") + public JsonResult getWorkOrderList(@RequestBody Map request) { + // 调用服务层方法,获取工单列表数据 + return ebikeBikeInfoService.getWorkOrderList(request); + } } diff --git a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/EbikeBikeInfoService.java b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/EbikeBikeInfoService.java index aa4d60d6..736800e1 100644 --- a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/EbikeBikeInfoService.java +++ b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/EbikeBikeInfoService.java @@ -288,4 +288,13 @@ public interface EbikeBikeInfoService extends IService { * @return */ JsonResult completeDeployment(Map param); + + + /** + * 获取工单列表 + * + * @param param 获取工单列表请求参数,如分页信息、筛选条件等 + * @return 返回工单列表数据 + */ + JsonResult getWorkOrderList(Map param); } diff --git a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java index 0de40709..1bad88c2 100644 --- a/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java +++ b/ebike-maintenance/src/main/java/com/cdzy/ebikemaintenance/service/impl/EbikeBikeInfoServiceImpl.java @@ -126,7 +126,6 @@ public class EbikeBikeInfoServiceImpl extends ServiceImpl result = staffFeignClient.getInfoByToken(tokenValue); - if (result.getCode() != Code.SUCCESS) { - throw new RuntimeException("获取用户信息失败"); - } - StaffFeign staffFeign = result.getData(); + StaffFeign staffFeign = getStaffFeignInfo(); // 获取当前操作用户 String userId = staffFeign.getStaffId().toString(); //生成工单编号 @@ -754,13 +747,7 @@ public class EbikeBikeInfoServiceImpl extends ServiceImpl result = staffFeignClient.getInfoByToken(tokenValue); - if (result.getCode() != Code.SUCCESS) { - throw new RuntimeException("获取用户信息失败"); - } - StaffFeign staffFeign = result.getData(); + StaffFeign staffFeign = getStaffFeignInfo(); //匹配工单ID、将其完成 String orderId = orderService.doneChangeBattery(ebikeBikeInfo.getBikeId(), String.valueOf(staffFeign.getStaffId())); //生成换电记录 @@ -1133,12 +1120,7 @@ public class EbikeBikeInfoServiceImpl extends ServiceImpl bikeCode = reqBulkDeliveryDto.getBikeCode(); - String tokenValue = StpUtil.getTokenValue(); - JsonResult result = staffFeignClient.getInfoByToken(tokenValue); - if (result.getCode() != Code.SUCCESS) { - throw new RuntimeException("获取用户信息失败"); - } - StaffFeign staffFeign = result.getData(); + StaffFeign staffFeign = getStaffFeignInfo(); // 获取当前操作用户和时间 String operatorName = staffFeign.getStaffId().toString(); LocalDateTime currentTime = LocalDateTime.now(); @@ -1175,14 +1157,8 @@ public class EbikeBikeInfoServiceImpl extends ServiceImpl result = staffFeignClient.getInfoByToken(tokenValue); - if (result.getCode() != Code.SUCCESS) { - throw new RuntimeException("获取用户信息失败"); - } - - StaffFeign staffFeign = result.getData(); + StaffFeign staffFeign = getStaffFeignInfo(); String userId = staffFeign.getStaffId().toString(); // 生成工单编号 SnowFlakeIDKeyGenerator snowFlakeIDKeyGenerator = new SnowFlakeIDKeyGenerator(); @@ -1209,8 +1185,8 @@ public class EbikeBikeInfoServiceImpl extends ServiceImpl getWorkOrderList(Map param) { + try { + // 获取当前操作用户的staff信息 + StaffFeign staffFeign = getStaffFeignInfo(); + // 获取当前用户ID + String userId = staffFeign.getStaffId().toString(); + // 获取分页参数 + Map param1 = (Map)param.get("pageParam"); + int pageNum = (int) param1.get("pageNum"); + int pageSize = (int) param1.get("pageSize"); + // 创建查询条件 + QueryWrapper query = QueryWrapper.create() + .select("order_id, bike_code, order_type, created_at, receiver_id, dispatch_type," + + " bike_count, longitude, latitude,order_type_name") // 选择需要的字段 + .from("v_ebike_work_order_summary") // 指定查询的表 + .eq("receiver_id", userId); // 根据当前用户ID过滤数据 + // 执行查询,获取工作订单列表 + Page resEbikeWorkOrderSummaryDtoPage = ebikeBikeOrderMapper + .paginateAs(pageNum,pageSize, query,ResEbikeWorkOrderSummaryDto.class); + // 返回查询结果 + return JsonResult.success(resEbikeWorkOrderSummaryDtoPage); + } catch (Exception e) { + // 捕获异常并记录日志 + log.error("获取工作订单列表时发生错误: ", e); + // 返回错误信息 + return JsonResult.failed("获取工作订单列表时发生错误。"); + } + } + public StaffFeign getStaffFeignInfo() { + String tokenValue = StpUtil.getTokenValue(); + // 调用 Feign 客户端获取用户信息 + JsonResult result = staffFeignClient.getInfoByToken(tokenValue); + // 判断返回码,若失败则抛出异常 + if (result.getCode() != Code.SUCCESS) { + throw new RuntimeException("获取用户信息失败"); + } + // 返回获取到的 StaffFeign 数据 + return result.getData(); + } } diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/request/ReqEbikeSysOperateSetSaveDto.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/request/ReqEbikeSysOperateSetSaveDto.java index 8ec95900..11b1e7f9 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/request/ReqEbikeSysOperateSetSaveDto.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/request/ReqEbikeSysOperateSetSaveDto.java @@ -1,6 +1,7 @@ package com.cdzy.ebikeoperate.model.dto.request; import cn.hutool.core.date.DateTime; +import com.alibaba.fastjson2.JSONArray; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -24,7 +25,7 @@ public class ReqEbikeSysOperateSetSaveDto { /** * 星期几;,分隔;null为按时间段运营 */ - private String weekday; + private JSONArray weekday; /** * 工作开始时间;HH:mm:ss diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/request/ReqEbikeSysRbacksetDto.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/request/ReqEbikeSysRbacksetDto.java index 7af206aa..8968f7c7 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/request/ReqEbikeSysRbacksetDto.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/request/ReqEbikeSysRbacksetDto.java @@ -1,5 +1,6 @@ package com.cdzy.ebikeoperate.model.dto.request; +import com.alibaba.fastjson2.JSONArray; import com.mybatisflex.annotation.Id; import com.mybatisflex.annotation.Table; import lombok.AllArgsConstructor; @@ -84,12 +85,12 @@ public class ReqEbikeSysRbacksetDto implements Serializable { /** * 规范还车跳过类型 */ - private String ignoreRegularType; + private JSONArray ignoreRegularType; /** * 学习免调度费还车类型 */ - private String freeReturnType; + private JSONArray freeReturnType; /** * 学习免调度费次数 diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/request/ReqEbikeSysRoperatesetDto.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/request/ReqEbikeSysRoperatesetDto.java index 301578b1..5d182c0f 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/request/ReqEbikeSysRoperatesetDto.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/request/ReqEbikeSysRoperatesetDto.java @@ -5,6 +5,7 @@ import lombok.Data; import java.io.Serializable; import java.math.BigDecimal; +import java.time.LocalDate; import java.time.LocalDateTime; import java.util.List; @@ -177,7 +178,7 @@ public class ReqEbikeSysRoperatesetDto implements Serializable { /** * 开票开始时间 */ - private LocalDateTime issueAnInvoiceStartTime; + private LocalDate issueAnInvoiceStartTime; /** * 0公里申诉自动退款 diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/ResEbikeSysOperateSetDto.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/ResEbikeSysOperateSetDto.java index 95febf7a..1895baed 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/ResEbikeSysOperateSetDto.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/ResEbikeSysOperateSetDto.java @@ -1,6 +1,7 @@ package com.cdzy.ebikeoperate.model.dto.response; import cn.hutool.core.date.DateTime; +import com.alibaba.fastjson2.JSONArray; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -27,7 +28,7 @@ public class ResEbikeSysOperateSetDto { /** * 星期几;,分隔;null为按时间段运营 */ - private String weekday; + private JSONArray weekday; /** * 工作开始时间;HH:mm:ss diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/ResEbikeSysRbacksetDto.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/ResEbikeSysRbacksetDto.java index 6b8b849c..5cedf37a 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/ResEbikeSysRbacksetDto.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/ResEbikeSysRbacksetDto.java @@ -1,5 +1,6 @@ package com.cdzy.ebikeoperate.model.dto.response; +import com.alibaba.fastjson2.JSONArray; import lombok.Data; import java.io.Serializable; @@ -78,12 +79,12 @@ public class ResEbikeSysRbacksetDto implements Serializable { /** * 规范还车跳过类型 */ - private String ignoreRegularType; + private JSONArray ignoreRegularType; /** * 学习免调度费还车类型 */ - private String freeReturnType; + private JSONArray freeReturnType; /** * 学习免调度费次数 diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/ResEbikeSysRoperatesetDto.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/ResEbikeSysRoperatesetDto.java index 5bab0e73..47692af8 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/ResEbikeSysRoperatesetDto.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/ResEbikeSysRoperatesetDto.java @@ -6,6 +6,7 @@ import lombok.Data; import java.io.Serializable; import java.math.BigDecimal; +import java.time.LocalDate; import java.time.LocalDateTime; import java.util.List; @@ -178,7 +179,7 @@ public class ResEbikeSysRoperatesetDto implements Serializable { /** * 开票开始时间 */ - private LocalDateTime issueAnInvoiceStartTime; + private LocalDate issueAnInvoiceStartTime; /** * 0公里申诉自动退款 diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysLinktel.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysLinktel.java index f5cb6fec..98b392d1 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysLinktel.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysLinktel.java @@ -37,7 +37,7 @@ public class EbikeSysLinktel implements Serializable { /** * 区域ID */ - private String reginId; + private String regionId; /** * 电话号码 diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysOperateSet.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysOperateSet.java index 034612ac..0b689ac9 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysOperateSet.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysOperateSet.java @@ -37,7 +37,7 @@ public class EbikeSysOperateSet implements Serializable { /** * 区域ID */ - private String reginId; + private String regionId; /** * 星期几;,分隔;null为按时间段运营 diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysRbackset.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysRbackset.java index 7f912269..52cb9549 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysRbackset.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysRbackset.java @@ -37,7 +37,7 @@ public class EbikeSysRbackset implements Serializable { /** * 区域ID */ - private String reginId; + private String regionId; /** * 是否站点还车 diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysRlockset.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysRlockset.java index c967a4fc..6b5dab7d 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysRlockset.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysRlockset.java @@ -36,7 +36,7 @@ public class EbikeSysRlockset implements Serializable { /** * 区域ID */ - private String reginId; + private String regionId; /** * 自动锁车(分钟) diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysRoperateset.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysRoperateset.java index 2d87b6c8..66c1bba4 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysRoperateset.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysRoperateset.java @@ -2,8 +2,10 @@ package com.cdzy.ebikeoperate.model.pojo; import com.mybatisflex.annotation.Id; import com.mybatisflex.annotation.Table; + import java.io.Serializable; import java.math.BigDecimal; +import java.time.LocalDate; import java.time.LocalDateTime; import java.io.Serial; @@ -38,7 +40,7 @@ public class EbikeSysRoperateset implements Serializable { /** * 区域ID */ - private String reginId; + private String regionId; /** * 是否运营;1运营中 0停止运营 @@ -193,7 +195,7 @@ public class EbikeSysRoperateset implements Serializable { /** * 开票开始时间 */ - private LocalDateTime issueAnInvoiceStartTime; + private LocalDate issueAnInvoiceStartTime; /** * 0公里申诉自动退款 diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysRusecondset.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysRusecondset.java index ccde6385..29d728a3 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysRusecondset.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/pojo/EbikeSysRusecondset.java @@ -37,7 +37,7 @@ public class EbikeSysRusecondset implements Serializable { /** * 区域ID */ - private String reginId; + private String regionId; /** * 禁止用户借车电量;百分比,默认30 diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeSysRoperatesetServiceImpl.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeSysRoperatesetServiceImpl.java index 022efd15..f14c4ff1 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeSysRoperatesetServiceImpl.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeSysRoperatesetServiceImpl.java @@ -1,22 +1,28 @@ package com.cdzy.ebikeoperate.service.impl; -import com.cdzy.ebikeoperate.mapper.EbikeSysLinktelMapper; -import com.cdzy.ebikeoperate.mapper.EbikeSysOperateSetMapper; +import com.cdzy.ebikeoperate.mapper.*; +import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeSysOperateSetSaveDto; import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeSysRoperatesetDto; import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeSysRoperatesetsDto; +import com.cdzy.ebikeoperate.model.pojo.EbikeSysOperateSet; import com.cdzy.ebikeoperate.model.pojo.EbikeSysRcostset; +import com.cdzy.ebikeoperate.service.EbikeSysRcostsetService; import com.mybatisflex.core.query.QueryWrapper; import com.mybatisflex.spring.service.impl.ServiceImpl; import com.cdzy.ebikeoperate.model.pojo.EbikeSysRoperateset; -import com.cdzy.ebikeoperate.mapper.EbikeSysRoperatesetMapper; import com.cdzy.ebikeoperate.service.EbikeSysRoperatesetService; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.ArrayList; +import java.util.List; + import static com.cdzy.ebikeoperate.model.pojo.table.EbikeSysLinktelTableDef.EBIKE_SYS_LINKTEL; +import static com.cdzy.ebikeoperate.model.pojo.table.EbikeSysOperateSetTableDef.EBIKE_SYS_OPERATE_SET; import static com.cdzy.ebikeoperate.model.pojo.table.EbikeSysRoperatesetTableDef.EBIKE_SYS_ROPERATESET; /** @@ -33,11 +39,19 @@ public class EbikeSysRoperatesetServiceImpl extends ServiceImpl operateTime = reqEbikeSysRoperatesetDto.getOperateTime(); + List ebikeSysOperateSets = new ArrayList<>(); + for (ReqEbikeSysOperateSetSaveDto reqEbikeSysOperateSetSaveDto : operateTime) { + EbikeSysOperateSet ebikeSysOperateSet = new EbikeSysOperateSet(); + BeanUtils.copyProperties(reqEbikeSysOperateSetSaveDto, ebikeSysOperateSet); + if (reqEbikeSysOperateSetSaveDto.getWeekday() != null) { + ebikeSysOperateSet.setWeekday(reqEbikeSysOperateSetSaveDto.getWeekday().toString()); + } + ebikeSysOperateSets.add(ebikeSysOperateSet); + } + if (!ebikeSysOperateSets.isEmpty()) { + ebikeSysOperateSetMapper.insertBatch(ebikeSysOperateSets); + } + return true; } }