Commit d21e84fe by 王力

Merge branch 'dev_mp2jpa0809' into 'develop'

Dev mp2jpa0809

See merge request !328
2 parents 82c5d2d0 86ccc9d8
......@@ -19,4 +19,5 @@ public interface OrderInfoDao extends JpaRepository<OrderInfoEntity, Long>, JpaS
List<OrderInfoEntity> findAllByOrderIdIn(List<String> orderIds);
List<OrderInfoEntity> findAllByDtAndOrderIdIn(LocalDate dt, List<String> orderIds);
List<OrderInfoEntity> findByEngineerCodeAndDtAndAppointmentStatusIn(String engineerCode, LocalDate dt, List<String> appointmentStatus);
List<OrderInfoEntity> findByDtAndTeamIdAndAppointmentStatusIn(LocalDate dt, String teamId, List<String> appointmentStatus);
}
package com.dituhui.pea.order.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.dituhui.pea.common.BusinessException;
import com.dituhui.pea.common.Result;
......@@ -92,14 +91,14 @@ public class ScheduleServiceImpl implements ScheduleService {
team.setLevel("team");
// 获取改team订单列表
List<OrderInfo> orders = this.queryOrderRequests(t.getTeamId(), date);
List<OrderInfoEntity> orders = orderInfoDao.findByDtAndTeamIdAndAppointmentStatusIn(date, t.getTeamId(), List.of("PRE", "CONFIRM"));
team.setOrder(this.getTeamOrderSum(orders, skillMapping));
// 技术员指派单列表
Map<String, List<OrderInfo>> engineerOrders = new HashMap<>();
Map<String, List<OrderInfoEntity>> engineerOrders = new HashMap<>();
if (ListUtils.isNotEmpty(orders)) {
orders.sort(Comparator.comparing(OrderInfo::getEngineerCode));
engineerOrders = orders.stream().collect(Collectors.groupingBy(OrderInfo::getEngineerCode));
orders.sort(Comparator.comparing(OrderInfoEntity::getEngineerCode));
engineerOrders = orders.stream().collect(Collectors.groupingBy(OrderInfoEntity::getEngineerCode));
}
// 获取team技术员列表
......@@ -118,7 +117,7 @@ public class ScheduleServiceImpl implements ScheduleService {
EngineerInfoEntity engineerInfo = entry.getValue().get(0);
// 获取技术员已经指派的订单列表
List<OrderInfo> orders2 = engineerOrders.getOrDefault(engineerCode, new ArrayList<>());
List<OrderInfoEntity> orders2 = engineerOrders.getOrDefault(engineerCode, new ArrayList<>());
child.setName(engineerInfo.getName());
child.setValue(engineerCode);
......@@ -250,23 +249,15 @@ public class ScheduleServiceImpl implements ScheduleService {
return orgTeamDao.findAll(spec, pageable);
}
private List<OrderInfo> queryOrderRequests(String teamId, LocalDate date) {
LambdaQueryWrapper<OrderInfo> lqw = new LambdaQueryWrapper<>();
lqw.eq(OrderInfo::getDt, date);
lqw.in(OrderInfo::getOrgTeamId, teamId);
lqw.in(OrderInfo::getAppointmentStatus, List.of("VIRTUAL", "PRE", "CONFIRM"));
return orderInfoMPDao.selectList(lqw);
}
private ScheduleOverviewResp.OrderSum getTeamOrderSum(List<OrderInfo> orders, HashMap<String, String> skillMapping) {
private ScheduleOverviewResp.OrderSum getTeamOrderSum(List<OrderInfoEntity> orders, HashMap<String, String> skillMapping) {
ScheduleOverviewResp.OrderSum s = new ScheduleOverviewResp.OrderSum();
List<OrderInfo> emtpy = new ArrayList<>();
HashMap<String, Integer> skillCounter = new HashMap<>();
Map<String, List<OrderInfo>> cc = orders.stream().collect(Collectors.groupingBy(OrderInfo::getSkill));
for (Map.Entry<String, List<OrderInfo>> entry : cc.entrySet()) {
Map<String, List<OrderInfoEntity>> cc = orders.stream().collect(Collectors.groupingBy(OrderInfoEntity::getSkill));
for (Map.Entry<String, List<OrderInfoEntity>> entry : cc.entrySet()) {
String skill = entry.getKey();
Integer count = entry.getValue().size();
String skillCategory = skillMapping.get(skill);
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!