工单列表

This commit is contained in:
小朱 2025-04-30 17:36:19 +08:00
parent 526b695f65
commit f6e9c91f01
3 changed files with 67 additions and 30 deletions

View File

@ -832,5 +832,16 @@ public class EbikeBikeInfoController {
// 调用服务层方法执行完成投放操作
return ebikeBikeInfoService.completeDeployment(request);
}
/**
* 获取工单列表
*
* @param request 获取工单列表请求参数如分页信息筛选条件等
* @return 返回工单列表数据
*/
@PostMapping("getWorkOrderList")
public JsonResult<?> getWorkOrderList(@RequestBody Map<String, Object> request) {
// 调用服务层方法获取工单列表数据
return ebikeBikeInfoService.getWorkOrderList(request);
}
}

View File

@ -288,4 +288,13 @@ public interface EbikeBikeInfoService extends IService<EbikeBikeInfo> {
* @return
*/
JsonResult<?> completeDeployment(Map<String,Object> param);
/**
* 获取工单列表
*
* @param param 获取工单列表请求参数如分页信息筛选条件等
* @return 返回工单列表数据
*/
JsonResult<?> getWorkOrderList(Map<String,Object> param);
}

View File

@ -126,7 +126,6 @@ public class EbikeBikeInfoServiceImpl extends ServiceImpl<EbikeBikeInfoMapper, E
private EbikeScheduleWorkOrderExtensionMapper ebikeScheduleWorkOrderExtensionMapper;
@Resource
private EbikeVehicleDispatchFileMapper ebikeVehicleDispatchFileMapper;
@Override
public EbikeBikeInfo getByBikeCode(String bikeCode) {
QueryWrapper query = QueryWrapper.create();
@ -620,13 +619,7 @@ public class EbikeBikeInfoServiceImpl extends ServiceImpl<EbikeBikeInfoMapper, E
if (faultIds == null || bikeCode.isEmpty()) {
return "";
}
String tokenValue = StpUtil.getTokenValue();
JsonResult<StaffFeign> 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<EbikeBikeInfoMapper, E
}
ebikeBikeInfo.setBatteryId(newBattery.getBatteryId());
ebikeBikeInfoMapper.update(ebikeBikeInfo);
String tokenValue = StpUtil.getTokenValue();
JsonResult<StaffFeign> 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<EbikeBikeInfoMapper, E
public void batchRecordBikeListingInfo(ReqBulkDeliveryDto reqBulkDeliveryDto) {
// 获取车辆上架的车牌列表
List<String> bikeCode = reqBulkDeliveryDto.getBikeCode();
String tokenValue = StpUtil.getTokenValue();
JsonResult<StaffFeign> 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<EbikeBikeInfoMapper, E
public String createWorkOrderDispatch(ReqWorkOrderDispatchDto eqWorkOrderDispatchDto) {
try {
// 获取 token 和用户信息
String tokenValue = StpUtil.getTokenValue();
JsonResult<StaffFeign> 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<EbikeBikeInfoMapper, E
if(resGPSDto!=null){
Double latitude = resGPSDto.getLatitude();
Double longitude = resGPSDto.getLongitude();
dispatchRecord.setStartVehicleLng(latitude);
dispatchRecord.setStartVehicleLat(longitude);
dispatchRecord.setStartVehicleLng(longitude);
dispatchRecord.setStartVehicleLat(latitude);
}
dispatchRecord.setOrderId(ebikeBikeOrder.getOrderId());
dispatchRecord.setBikeCode(bikeCode);
@ -1415,4 +1391,45 @@ public class EbikeBikeInfoServiceImpl extends ServiceImpl<EbikeBikeInfoMapper, E
}
return JsonResult.success("投放成功");
}
public JsonResult<?> getWorkOrderList(Map<String, Object> param) {
try {
// 获取当前操作用户的staff信息
StaffFeign staffFeign = getStaffFeignInfo();
// 获取当前用户ID
String userId = staffFeign.getStaffId().toString();
// 获取分页参数
Map<String,Object> param1 = (Map<String,Object>)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<ResEbikeWorkOrderSummaryDto> 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<StaffFeign> result = staffFeignClient.getInfoByToken(tokenValue);
// 判断返回码若失败则抛出异常
if (result.getCode() != Code.SUCCESS) {
throw new RuntimeException("获取用户信息失败");
}
// 返回获取到的 StaffFeign 数据
return result.getData();
}
}