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