|
|
@@ -592,16 +592,49 @@ export default {
|
|
|
const { staffScheduleDetailPoList, startDate } = response.data
|
|
|
data.adjustmentDetailPoList.forEach(async (el) => {
|
|
|
const userId = el.createBy
|
|
|
- const partyId = el.party
|
|
|
const userResIndex = staffScheduleDetailPoList.findIndex(item => item.userId === userId) // 获取调班人的排班详情
|
|
|
- const partyResIndex = staffScheduleDetailPoList.findIndex(item => item.userId === partyId) // 获取目标人的排班详情
|
|
|
- // 修改调班人排班数据
|
|
|
- const index = this.getDays(startDate, el.beforeDate) // 计算得出是d几天
|
|
|
- staffScheduleDetailPoList[userResIndex][`d${index + 1}`] = staffScheduleDetailPoList[userResIndex][`d${index + 1}`].replace(el.beforeAdjust, el.afterAdjust)
|
|
|
if (data.type !== 'paiban') {
|
|
|
+ const partyId = el.party
|
|
|
+ const partyResIndex = staffScheduleDetailPoList.findIndex(item => item.userId === partyId) // 获取目标人的排班详情
|
|
|
+ // 修改调班人排班数据
|
|
|
+ const index = this.getDays(startDate, el.afterDate) // 计算得出是d几天
|
|
|
+ staffScheduleDetailPoList[userResIndex][`d${index + 1}`] = staffScheduleDetailPoList[userResIndex][`d${index + 1}`].concat(',' + el.afterAdjust) // 申请人目标日期改变
|
|
|
+ const partyIndex = this.getDays(startDate, el.beforeDate) // 计算得出是d几天
|
|
|
+ const beforeAdjustList = el.beforeAdjust.split(',')
|
|
|
+ beforeAdjustList.forEach((item, i) => {
|
|
|
+ if (i === (beforeAdjustList.length - 1)) {
|
|
|
+ staffScheduleDetailPoList[userResIndex][`d${partyIndex + 1}`] = staffScheduleDetailPoList[userResIndex][`d${partyIndex + 1}`].replace(item, '') // 申请人申请日期除去原来的班次
|
|
|
+ } else { // 当不在最后一项时,把附带的逗号也除去
|
|
|
+ staffScheduleDetailPoList[userResIndex][`d${partyIndex + 1}`] = staffScheduleDetailPoList[userResIndex][`d${partyIndex + 1}`].replace(item + ',', '') // 申请人申请日期除去原来的班次和逗号
|
|
|
+ }
|
|
|
+ })
|
|
|
// 修改目标人排班数据
|
|
|
- const partyIndex = this.getDays(startDate, el.afterDate) // 计算得出是d几天
|
|
|
- staffScheduleDetailPoList[partyResIndex][`d${partyIndex + 1}`] = staffScheduleDetailPoList[partyResIndex][`d${partyIndex + 1}`].replace(el.afterAdjust, el.beforeAdjust)
|
|
|
+ staffScheduleDetailPoList[partyResIndex][`d${partyIndex + 1}`] = staffScheduleDetailPoList[partyResIndex][`d${partyIndex + 1}`].concat(',' + el.beforeAdjust)// 调班人申请日期改变
|
|
|
+ const afterAdjustList = el.afterAdjust.split(',')
|
|
|
+ afterAdjustList.forEach((item, i) => {
|
|
|
+ if (i === (afterAdjustList.length - 1)) {
|
|
|
+ staffScheduleDetailPoList[partyResIndex][`d${index + 1}`] = staffScheduleDetailPoList[partyResIndex][`d${index + 1}`].replace(item, '')// 调班人目标日期除去原来班次
|
|
|
+ } else {
|
|
|
+ staffScheduleDetailPoList[partyResIndex][`d${index + 1}`] = staffScheduleDetailPoList[partyResIndex][`d${index + 1}`].replace(item + ',', '')// 调班人目标日期除去原来班次和逗号
|
|
|
+ }
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ // 排版变更
|
|
|
+ const index = this.getDays(startDate, el.afterDate) // 计算得出是d几天
|
|
|
+ const partyIndex = this.getDays(startDate, el.beforeDate) // 计算得出是d几天
|
|
|
+ if (staffScheduleDetailPoList[userResIndex][`d${index + 1}`] !== '') {
|
|
|
+ staffScheduleDetailPoList[userResIndex][`d${index + 1}`] = staffScheduleDetailPoList[userResIndex][`d${index + 1}`].concat(',' + el.afterAdjust) // 申请人目标日期改变
|
|
|
+ } else {
|
|
|
+ staffScheduleDetailPoList[userResIndex][`d${index + 1}`] = el.afterAdjust
|
|
|
+ }
|
|
|
+ const beforeAdjustList = el.beforeAdjust.split(',')
|
|
|
+ beforeAdjustList.forEach((item, i) => {
|
|
|
+ if (i === (beforeAdjustList.length - 1)) {
|
|
|
+ staffScheduleDetailPoList[userResIndex][`d${partyIndex + 1}`] = staffScheduleDetailPoList[userResIndex][`d${partyIndex + 1}`].replace(item, '') // 申请人申请日期除去原来的班次
|
|
|
+ } else { // 当不在最后一项时,把附带的逗号也除去
|
|
|
+ staffScheduleDetailPoList[userResIndex][`d${partyIndex + 1}`] = staffScheduleDetailPoList[userResIndex][`d${partyIndex + 1}`].replace(item + ',', '') // 申请人申请日期除去原来的班次和逗号
|
|
|
+ }
|
|
|
+ })
|
|
|
}
|
|
|
})
|
|
|
// 保存修改后的排班
|