master #4
@@ -41,6 +41,10 @@ public class ServiceWorkOrdersType extends TenantEntity {
|
||||
* 运作模式(0派单+抢单,1派单,2自动派单)
|
||||
*/
|
||||
private String operationMode;
|
||||
/**
|
||||
*部门id
|
||||
*/
|
||||
private Long deptId;
|
||||
|
||||
/**
|
||||
* 排序值
|
||||
|
@@ -36,7 +36,11 @@ public class ServiceWorkOrdersTypeBo extends BaseEntity {
|
||||
*/
|
||||
@NotNull(message = "工单类型名称不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String orderTypeName;
|
||||
|
||||
/**
|
||||
*部门id
|
||||
*/
|
||||
@NotNull(message = "部门id", groups = { EditGroup.class })
|
||||
private Long deptId;
|
||||
/**
|
||||
* 运作模式
|
||||
*/
|
||||
|
@@ -44,6 +44,14 @@ public class ServiceWorkOrdersTypeVo implements Serializable {
|
||||
*/
|
||||
@ExcelProperty(value = "工单类型名称")
|
||||
private String orderTypeName;
|
||||
/**
|
||||
*部门id
|
||||
*/
|
||||
private Long deptId;
|
||||
/**
|
||||
*部门名称
|
||||
*/
|
||||
private String deptName;
|
||||
|
||||
/**
|
||||
* 运作模式
|
||||
|
@@ -227,7 +227,7 @@ public class ServiceWorkOrdersServiceImpl implements IServiceWorkOrdersService {
|
||||
boolean flags = workOrdersRecordMapper.insert(serviceWorkOrdersRecord) > 0;
|
||||
if (flags) {
|
||||
if (serviceWorkOrdersType.getOperationMode().equals(OrderTypeOperationEnum.AUTOMATE_DISPATCH.getValue())) {
|
||||
handleServiceWorkOrder(add);
|
||||
handleServiceWorkOrder(add,serviceWorkOrdersType);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -235,7 +235,7 @@ public class ServiceWorkOrdersServiceImpl implements IServiceWorkOrdersService {
|
||||
}
|
||||
|
||||
//自动派单
|
||||
private void handleServiceWorkOrder(ServiceWorkOrders serviceWorkOrders) {
|
||||
private void handleServiceWorkOrder(ServiceWorkOrders serviceWorkOrders,ServiceWorkOrdersType serviceWorkOrdersType) {
|
||||
LocalDate today = LocalDate.now();
|
||||
// 1. 获取今日排班人员(优先查缓存,未命中则查询数据库并缓存)
|
||||
List<AttendanceUserGroup> attendanceUserGroups = RedisUtils.getCacheList(DateUtil.today());
|
||||
@@ -243,7 +243,7 @@ public class ServiceWorkOrdersServiceImpl implements IServiceWorkOrdersService {
|
||||
new LambdaQueryWrapper<AttendanceUserGroup>()
|
||||
.le(AttendanceUserGroup::getStartDate, today)
|
||||
.ge(AttendanceUserGroup::getEndDate, today)
|
||||
.eq(AttendanceUserGroup::getDeptId, serviceWorkOrders.getCreateDept())
|
||||
.eq(AttendanceUserGroup::getDeptId, serviceWorkOrdersType.getCreateDept())
|
||||
.orderByAsc(AttendanceUserGroup::getStartDate)
|
||||
);
|
||||
if (CollUtil.isEmpty(attendanceUserGroups)|| attendanceUserGroups.size() != attendanceUserGroupList.size()) {
|
||||
@@ -591,7 +591,7 @@ public class ServiceWorkOrdersServiceImpl implements IServiceWorkOrdersService {
|
||||
boolean flags = workOrdersRecordMapper.insert(serviceWorkOrdersRecord) > 0;
|
||||
if (flags) {
|
||||
if (serviceWorkOrdersType.getOperationMode().equals(OrderTypeOperationEnum.AUTOMATE_DISPATCH.getValue())) {
|
||||
handleServiceWorkOrder(add);
|
||||
handleServiceWorkOrder(add,serviceWorkOrdersType);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -3,6 +3,7 @@ package org.dromara.property.service.impl;
|
||||
import cn.hutool.core.util.IdUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import org.apache.dubbo.config.annotation.DubboReference;
|
||||
import org.dromara.common.core.exception.ServiceException;
|
||||
import org.dromara.common.core.utils.MapstructUtils;
|
||||
import org.dromara.common.core.utils.StringUtils;
|
||||
@@ -18,6 +19,8 @@ import org.dromara.property.domain.bo.ServiceWorkOrdersTypeBo;
|
||||
import org.dromara.property.domain.vo.ServiceWorkOrdersTypeVo;
|
||||
import org.dromara.property.mapper.ServiceWorkOrdersTypeMapper;
|
||||
import org.dromara.property.service.IServiceWorkOrdersTypeService;
|
||||
import org.dromara.system.api.RemoteDeptService;
|
||||
import org.dromara.system.api.domain.vo.RemoteDeptVo;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
@@ -39,6 +42,8 @@ public class ServiceWorkOrdersTypeServiceImpl implements IServiceWorkOrdersTypeS
|
||||
|
||||
private final ServiceWorkOrdersTypeMapper baseMapper;
|
||||
|
||||
@DubboReference
|
||||
private RemoteDeptService remoteDeptService;
|
||||
/**
|
||||
* 查询【工单类型】
|
||||
*
|
||||
@@ -47,7 +52,11 @@ public class ServiceWorkOrdersTypeServiceImpl implements IServiceWorkOrdersTypeS
|
||||
*/
|
||||
@Override
|
||||
public ServiceWorkOrdersTypeVo queryById(Long id) {
|
||||
return baseMapper.selectVoById(id);
|
||||
ServiceWorkOrdersTypeVo serviceWorkOrdersTypeVo= baseMapper.selectVoById(id);
|
||||
Long deptId = serviceWorkOrdersTypeVo.getDeptId();
|
||||
RemoteDeptVo remoteDeptVo = remoteDeptService.selectDeptVoById(deptId);
|
||||
serviceWorkOrdersTypeVo.setDeptName(remoteDeptVo.getDeptName());
|
||||
return serviceWorkOrdersTypeVo;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -61,6 +70,11 @@ public class ServiceWorkOrdersTypeServiceImpl implements IServiceWorkOrdersTypeS
|
||||
public TableDataInfo<ServiceWorkOrdersTypeVo> queryPageList(ServiceWorkOrdersTypeBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<ServiceWorkOrdersType> lqw = buildQueryWrapper(bo);
|
||||
Page<ServiceWorkOrdersTypeVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
result.getRecords().stream().forEach(vo -> {
|
||||
Long deptId = vo.getDeptId();
|
||||
RemoteDeptVo remoteDeptVo = remoteDeptService.selectDeptVoById(deptId);
|
||||
vo.setDeptName(remoteDeptVo.getDeptName());
|
||||
});
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@@ -73,7 +87,13 @@ public class ServiceWorkOrdersTypeServiceImpl implements IServiceWorkOrdersTypeS
|
||||
@Override
|
||||
public List<ServiceWorkOrdersTypeVo> queryList(ServiceWorkOrdersTypeBo bo) {
|
||||
LambdaQueryWrapper<ServiceWorkOrdersType> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
List<ServiceWorkOrdersTypeVo> serviceWorkOrdersTypeVoList= baseMapper.selectVoList(lqw);
|
||||
serviceWorkOrdersTypeVoList.stream().forEach(vo -> {
|
||||
Long deptId = vo.getDeptId();
|
||||
RemoteDeptVo remoteDeptVo = remoteDeptService.selectDeptVoById(deptId);
|
||||
vo.setDeptName(remoteDeptVo.getDeptName());
|
||||
});
|
||||
return serviceWorkOrdersTypeVoList;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<ServiceWorkOrdersType> buildQueryWrapper(ServiceWorkOrdersTypeBo bo) {
|
||||
|
Reference in New Issue
Block a user