Commit e218a74d by 邹磊浩

修改代码

parent 9144c2a3
......@@ -28,4 +28,14 @@ public class OrderColumnarBo implements Serializable {
* 陪诊员ids
*/
private List<Integer> emIds;
/**
* 城市id
*/
private Long cityId;
/**
* 机构id
*/
private Long companyId;
}
......@@ -1248,20 +1248,6 @@ public class TotalOrderServiceImpl implements ITotalOrderService {
public List<OrderLineVo> findOrderColumnarVoList(OrderColumnarBo bo) {
Long roleId = LoginHelper.getLoginUser().getRoleId();
Long userId = LoginHelper.getUserId();
//商户
if (roleId == 3L) {
//查找该商户
Optional.ofNullable(companyMapper.selectOne(Wrappers.<Company>lambdaQuery().eq(Company::getUid, userId).eq(Company::getStatus, 1)))
.ifPresent(company -> {
//获取该商户下所有陪诊员
List<Employees> employees = employeesMapper.selectList(Wrappers.<Employees>lambdaQuery().eq(Employees::getCompanyId, company.getId()));
if (CollectionUtils.isNotEmpty(employees)) {
bo.setEmIds(employees.stream().map(Employees::getId).collect(Collectors.toList()));
} else {
bo.setEmIds(Arrays.asList(999999));
}
});
}
List<OrderLineVo> list = new ArrayList<>();
List<String> recentDates;
switch (bo.getType()) {
......@@ -1277,16 +1263,34 @@ public class TotalOrderServiceImpl implements ITotalOrderService {
default:
return list;
}
// 获取商户和陪诊员信息
if (roleId == 3L) {
Optional.ofNullable(companyMapper.selectOne(Wrappers.<Company>lambdaQuery().eq(Company::getUid, userId).eq(Company::getStatus, 1)))
.ifPresent(company -> {
List<Employees> employees = employeesMapper.selectList(Wrappers.<Employees>lambdaQuery().eq(Employees::getCompanyId, company.getId()));
bo.setEmIds(CollectionUtils.isNotEmpty(employees) ? employees.stream().map(Employees::getId).collect(Collectors.toList()) : Arrays.asList(999999));
});
}
// 获取该城市下所有陪诊员信息
if (bo.getCityId() != null) {
List<Company> companies = companyMapper.selectList(Wrappers.<Company>lambdaQuery().eq(Company::getCityId, bo.getCityId()).eq(null != bo.getCompanyId(), Company::getId, bo.getCompanyId()).eq(Company::getStatus, 1));
if (CollectionUtils.isNotEmpty(companies)) {
List<Employees> employees = employeesMapper.selectList(Wrappers.<Employees>lambdaQuery().in(Employees::getCompanyId, companies.stream().map(Company::getId).collect(Collectors.toList())));
bo.setEmIds(CollectionUtils.isNotEmpty(employees) ? employees.stream().map(Employees::getId).collect(Collectors.toList()) : Arrays.asList(999999));
}
}
// 使用一个 Map 来缓存已经查询过的订单列列表
Map<String, List<OrderColumnarVo>> orderMap = new HashMap<>();
for (String time : recentDates) {
List<OrderColumnarVo> orderColumnarVoList = orderMap.get(time);
if (orderColumnarVoList == null) {
orderColumnarVoList = baseMapper.findOrderColumnarVoList(time, bo.getEmIds());
List<OrderColumnarVo> orderColumnarVoList = orderMap.computeIfAbsent(time, k -> {
List<OrderColumnarVo> columnarVoList = baseMapper.findOrderColumnarVoList(time, bo.getEmIds());
OrderColumnarVo orderColumnarVo = baseMapper.findStoreOrderVoList(time, bo.getEmIds());
orderColumnarVoList.add(orderColumnarVo);
orderMap.put(time, orderColumnarVoList);
}
columnarVoList.add(orderColumnarVo);
return columnarVoList;
});
OrderLineVo orderLineVo = new OrderLineVo();
orderLineVo.setKey(time);
orderLineVo.setList(orderColumnarVoList);
......@@ -1437,7 +1441,7 @@ public class TotalOrderServiceImpl implements ITotalOrderService {
@Override
public DataOrderVo platformRevenue(DataViewBo dataViewBo) {
if(null != dataViewBo.getUserId()){
if (null != dataViewBo.getUserId()) {
Company company = companyMapper.selectOne(new LambdaQueryWrapper<Company>().eq(Company::getUid, dataViewBo.getUserId()));
dataViewBo.setUserId(company.getId().longValue());
return baseMapper.selectPlatformCom(dataViewBo);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment