|
|
|
@ -17,6 +17,7 @@ |
|
|
|
border |
|
|
|
size="mini" |
|
|
|
highlight-current-row |
|
|
|
ref="qcTable" |
|
|
|
@current-change="handleQcSelect" |
|
|
|
@row-click="handleQcSelect" |
|
|
|
style="width: 100%;" |
|
|
|
@ -225,6 +226,18 @@ export default { |
|
|
|
region: '' // 区域暂时为空 |
|
|
|
})) |
|
|
|
console.log('加载QC人员列表成功:', this.qcList) |
|
|
|
|
|
|
|
// 自动选中第一个QC人员并加载其排程数据 |
|
|
|
if (this.qcList.length > 0 && !this.selectedQc) { |
|
|
|
this.$nextTick(() => { |
|
|
|
this.selectedQc = this.qcList[0] |
|
|
|
this.loadScheduleData(this.qcList[0]) |
|
|
|
// 在表格中设置当前行 |
|
|
|
if (this.$refs.qcTable) { |
|
|
|
this.$refs.qcTable.setCurrentRow(this.qcList[0]) |
|
|
|
} |
|
|
|
}) |
|
|
|
} |
|
|
|
} else { |
|
|
|
this.qcList = [] |
|
|
|
console.warn('加载QC人员列表失败:', data.msg) |
|
|
|
@ -332,18 +345,30 @@ export default { |
|
|
|
this.loading = true |
|
|
|
|
|
|
|
// 调用后端接口获取该QC未来10天的排程数据 |
|
|
|
getScheduleView(qc.qcName || qc.userName).then(({ data }) => { |
|
|
|
// 注意:必须使用userName(用户名),而不是qcName(显示名称) |
|
|
|
getScheduleView(qc.userName).then(({ data }) => { |
|
|
|
if (data.code === 0 && data.list) { |
|
|
|
// 生成未来10天的日期结构 |
|
|
|
const days = this.generateNextDays(10) |
|
|
|
|
|
|
|
// 将后端返回的数据按日期分组 |
|
|
|
// 将后端返回的数据按日期分组(支持跨天排程) |
|
|
|
const tasksByDate = {} |
|
|
|
data.list.forEach(task => { |
|
|
|
const dateStr = this.formatDate(new Date(task.planStartDate)) |
|
|
|
// 计算从planStartDate到planEndDate之间的所有日期 |
|
|
|
const startDate = new Date(task.planStartDate) |
|
|
|
const endDate = new Date(task.planEndDate || task.planStartDate) |
|
|
|
|
|
|
|
// 遍历日期范围内的每一天 |
|
|
|
let currentDate = new Date(startDate) |
|
|
|
while (currentDate <= endDate) { |
|
|
|
const dateStr = this.formatDate(currentDate) |
|
|
|
if (!tasksByDate[dateStr]) { |
|
|
|
tasksByDate[dateStr] = [] |
|
|
|
} |
|
|
|
|
|
|
|
// 避免同一天重复添加同一个任务 |
|
|
|
const exists = tasksByDate[dateStr].some(t => t.requestNo === task.requestNo) |
|
|
|
if (!exists) { |
|
|
|
tasksByDate[dateStr].push({ |
|
|
|
requestNo: task.requestNo, |
|
|
|
supplierName: task.supplierName, |
|
|
|
@ -351,6 +376,11 @@ export default { |
|
|
|
planStartDate: task.planStartDate, |
|
|
|
planEndDate: task.planEndDate |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
|
// 移动到下一天 |
|
|
|
currentDate.setDate(currentDate.getDate() + 1) |
|
|
|
} |
|
|
|
}) |
|
|
|
|
|
|
|
// 将任务分配到对应的日期卡片中 |
|
|
|
|