修复部分bug
This commit is contained in:
parent
1a8223a358
commit
fb657b810e
|
|
@ -17,13 +17,13 @@ import java.util.List;
|
|||
@Schema(description = "工作票申请")
|
||||
public class WorkTicket extends BaseEntity {
|
||||
|
||||
@Schema(description = "工作票ID")
|
||||
@Schema(description = "工作票 ID")
|
||||
private Long ticketId;
|
||||
|
||||
@Schema(description = "票证编号")
|
||||
private String ticketNumber;
|
||||
|
||||
@Schema(description = "所属项目ID")
|
||||
@Schema(description = "所属项目 ID")
|
||||
private Long projectId;
|
||||
|
||||
@Schema(description = "项目编号(联查 work_plan 返回,表中不存)")
|
||||
|
|
@ -35,7 +35,7 @@ public class WorkTicket extends BaseEntity {
|
|||
@Schema(description = "作业地点")
|
||||
private String workLocation;
|
||||
|
||||
@Schema(description = "作业负责人ID")
|
||||
@Schema(description = "作业负责人 ID")
|
||||
private Long supervisorId;
|
||||
|
||||
@Schema(description = "作业负责人姓名")
|
||||
|
|
@ -44,9 +44,18 @@ public class WorkTicket extends BaseEntity {
|
|||
@Schema(description = "作业负责人职位")
|
||||
private String supervisorPosition;
|
||||
|
||||
@Schema(description = "负责人所属部门名称(根据负责人ID联查,列表返回)")
|
||||
@Schema(description = "负责人所属部门名称(根据负责人 ID 联查,列表返回)")
|
||||
private String supervisorDeptName;
|
||||
|
||||
@Schema(description = "搜索关键字(不映射到数据库,用于模糊查询 projectCode 和 projectName)")
|
||||
private String keyword;
|
||||
|
||||
@Schema(description = "开始时间(不映射到数据库,用于时间范围查询)")
|
||||
private String startTime;
|
||||
|
||||
@Schema(description = "结束时间(不映射到数据库,用于时间范围查询)")
|
||||
private String endTime;
|
||||
|
||||
@Schema(description = "作业内容")
|
||||
private String workContent;
|
||||
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 工作票申请Service业务层处理
|
||||
|
|
@ -87,7 +88,32 @@ public class WorkTicketServiceImpl implements IWorkTicketService {
|
|||
*/
|
||||
@Override
|
||||
public List<WorkTicket> selectWorkTicketList(WorkTicket workTicket) {
|
||||
return workTicketMapper.selectWorkTicketList(workTicket);
|
||||
List<WorkTicket> workTickets = workTicketMapper.selectWorkTicketList(workTicket);
|
||||
|
||||
// 在内存中根据 supervisorDeptName 字段进行模糊过滤
|
||||
if (StringUtils.isNotBlank(workTicket.getSupervisorDeptName())) {
|
||||
String keyword = workTicket.getSupervisorDeptName();
|
||||
workTickets = workTickets.stream()
|
||||
.filter(ticket -> ticket.getSupervisorDeptName() != null
|
||||
&& ticket.getSupervisorDeptName().contains(keyword))
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
// 在内存中根据 keyword 字段进行模糊过滤(匹配 projectCode 和 projectName)
|
||||
if (StringUtils.isNotBlank(workTicket.getKeyword())) {
|
||||
String keyword = workTicket.getKeyword();
|
||||
workTickets = workTickets.stream()
|
||||
.filter(ticket -> {
|
||||
boolean matchProjectCode = StringUtils.isNotBlank(ticket.getProjectCode())
|
||||
&& ticket.getTicketNumber().contains(keyword);
|
||||
boolean matchProjectName = StringUtils.isNotBlank(ticket.getProjectName())
|
||||
&& ticket.getProjectName().contains(keyword);
|
||||
return matchProjectCode || matchProjectName;
|
||||
})
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
return workTickets;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -205,7 +231,7 @@ public class WorkTicketServiceImpl implements IWorkTicketService {
|
|||
/**
|
||||
* 审批工作票(通过/已签发)
|
||||
*
|
||||
* @param ticketId 工作票ID
|
||||
* @param ticketId 工作票ID
|
||||
* @param reviewComment 审核意见
|
||||
* @return 结果
|
||||
*/
|
||||
|
|
@ -240,7 +266,7 @@ public class WorkTicketServiceImpl implements IWorkTicketService {
|
|||
/**
|
||||
* 审批工作票(驳回)
|
||||
*
|
||||
* @param ticketId 工作票ID
|
||||
* @param ticketId 工作票ID
|
||||
* @param reviewComment 审核意见
|
||||
* @return 结果
|
||||
*/
|
||||
|
|
@ -295,14 +321,16 @@ public class WorkTicketServiceImpl implements IWorkTicketService {
|
|||
try {
|
||||
if (StringUtils.isNotEmpty(workTicket.getGeneralSafetyMeasures())) {
|
||||
workTicket.setSafetyMeasuresList(objectMapper.readValue(
|
||||
workTicket.getGeneralSafetyMeasures(),
|
||||
new TypeReference<List<String>>() {}
|
||||
workTicket.getGeneralSafetyMeasures(),
|
||||
new TypeReference<List<String>>() {
|
||||
}
|
||||
));
|
||||
}
|
||||
if (StringUtils.isNotEmpty(workTicket.getTeamMemberQualifications())) {
|
||||
workTicket.setQualificationList(objectMapper.readValue(
|
||||
workTicket.getTeamMemberQualifications(),
|
||||
new TypeReference<List<com.admin.contractor.domain.TeamMemberQualification>>() {}
|
||||
workTicket.getTeamMemberQualifications(),
|
||||
new TypeReference<List<com.admin.contractor.domain.TeamMemberQualification>>() {
|
||||
}
|
||||
));
|
||||
}
|
||||
} catch (Exception e) {
|
||||
|
|
|
|||
|
|
@ -112,6 +112,12 @@
|
|||
<if test="projectId != null">
|
||||
and wt.project_id = #{projectId}
|
||||
</if>
|
||||
<if test="startTime != null and startTime != ''">
|
||||
and wt.create_time >= #{startTime}
|
||||
</if>
|
||||
<if test="endTime != null and endTime != ''">
|
||||
and wt.create_time <= DATE_ADD(DATE(#{endTime}), INTERVAL 1 DAY)
|
||||
</if>
|
||||
order by wt.create_time desc
|
||||
</select>
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue