|
@@ -15,6 +15,7 @@ import {
|
|
|
updateSubReport,
|
|
|
pullDataAgain
|
|
|
} from '@/api/qualityMonthlyReport/edit'
|
|
|
+// import { memberQueryMemberInfoByIDAPorName } from '@/api/projectIndex'
|
|
|
import { getAvaliableInfo, getMonthlyReportVersion } from '@/api/qualityMonthlyReport'
|
|
|
|
|
|
import {
|
|
@@ -30,6 +31,7 @@ import {
|
|
|
import { message } from '@/utils/mesDebounce'
|
|
|
|
|
|
import _ from 'lodash'
|
|
|
+import { getListPerson } from '@/api/onlineproblem'
|
|
|
|
|
|
export default {
|
|
|
/* 月报编辑 */
|
|
@@ -51,10 +53,12 @@ export default {
|
|
|
subTabsActive: [], // 当前页签中所有已切换的数据
|
|
|
domKeys: [], // 记录所有元素区域的唯一标识
|
|
|
selectEnum: [], // 部门数据
|
|
|
- userNames: [], // 人员数据
|
|
|
+ userNames: {}, // 人员数据
|
|
|
+ peopleLists: [], // 人员账号数据
|
|
|
subTitle: '新建月报',
|
|
|
subReportName: '',
|
|
|
subReportInfo: null, // 为回退时,当前页面为查看完整时,无法获取子月报数据情况设置
|
|
|
+ timeout: null, // 函数防抖/节流
|
|
|
offsetList: [],
|
|
|
/**
|
|
|
* 用户身份权限编号
|
|
@@ -158,14 +162,15 @@ export default {
|
|
|
if (tabsActive) {
|
|
|
state.tabsActive = `tab_${tabsActive}`
|
|
|
}
|
|
|
- // state.tabPageData = setReportData(tabPageData)
|
|
|
- const { newObj, domKeys } = setReportData(
|
|
|
+ const { newObj, domKeys, peopleLists } = setReportData(
|
|
|
tabPageData
|
|
|
? tabPageData.reportCatalog
|
|
|
: state.reportData[0].reportCatalog
|
|
|
)
|
|
|
state.tabPageData = newObj
|
|
|
state.domKeys = domKeys
|
|
|
+ console.log(peopleLists, 171)
|
|
|
+ state.peopleLists = peopleLists
|
|
|
},
|
|
|
// 切换页面之后数据维护
|
|
|
TAB_ACTIVE_CHANGE(state, tabsActive) {
|
|
@@ -192,13 +197,15 @@ export default {
|
|
|
state.reportData = [...reportData]
|
|
|
// console.log(state.reportData)
|
|
|
// 对新数据进行转换
|
|
|
- const { newObj, domKeys } = setReportData(
|
|
|
+ const { newObj, domKeys, peopleLists } = setReportData(
|
|
|
newTabPageData.reportCatalog,
|
|
|
108
|
|
|
)
|
|
|
state.tabsActive = `tab_${newTabsActive}`
|
|
|
state.tabPageData = newObj
|
|
|
state.domKeys = domKeys
|
|
|
+ state.peopleLists = peopleLists
|
|
|
+ console.log(peopleLists)
|
|
|
// 页面恢复待编辑状态
|
|
|
state.editKeys = []
|
|
|
// 子页面页签切换,清空原来的tabs选中状态
|
|
@@ -356,7 +363,9 @@ export default {
|
|
|
state.subTabsActive = [] // 当前页签中所有已切换的数据
|
|
|
state.domKeys = [] // 记录所有元素区域的唯一标识
|
|
|
state.selectEnum = [] // 部门数据
|
|
|
- state.userNames = [] // 人员数据
|
|
|
+ state.userNames = {} // 人员数据
|
|
|
+ state.peopleLists = [] // 人员账号数据
|
|
|
+ state.timeout = null // 函数防抖/节流
|
|
|
state.subTitle = '新建月报'
|
|
|
state.subReportName = ''
|
|
|
state.subReportInfo = null // 为回退时,当前页面为查看完整时,无法获取子月报数据情况设置
|
|
@@ -379,7 +388,7 @@ export default {
|
|
|
// tabPageData
|
|
|
SET_TAB_PAGE_DATA(state, { data, id, tabsActive }) {
|
|
|
// 对新数据进行转换
|
|
|
- const { newObj, domKeys } = setReportData(
|
|
|
+ const { newObj, domKeys, peopleLists } = setReportData(
|
|
|
{
|
|
|
children: _.cloneDeep(data)
|
|
|
},
|
|
@@ -391,6 +400,8 @@ export default {
|
|
|
// console.log(365, state.tabPageData)
|
|
|
state.tabPageData = newObj
|
|
|
state.domKeys = domKeys
|
|
|
+ state.peopleLists = peopleLists
|
|
|
+ console.log(402, peopleLists)
|
|
|
// 页面恢复待编辑状态
|
|
|
state.editKeys = []
|
|
|
// 子页面页签切换,清空原来的tabs选中状态
|
|
@@ -589,6 +600,15 @@ export default {
|
|
|
})
|
|
|
}
|
|
|
}
|
|
|
+ },
|
|
|
+ /**
|
|
|
+ * 设置人员账号
|
|
|
+ * @param state 数据源
|
|
|
+ * @param people ['honghaitao_v'] 人员账号数组
|
|
|
+ * @constructor
|
|
|
+ */
|
|
|
+ SET_PEOPLELISTS(state, people) {
|
|
|
+ state.peopleLists = Array.from(new Set([...state.peopleLists, ...people]))
|
|
|
}
|
|
|
},
|
|
|
actions: {
|
|
@@ -620,6 +640,7 @@ export default {
|
|
|
commit('INIT_PAGE_DATA', { ...res.data })
|
|
|
commit('INIT_TAB_PAGE_DATA', subActive && `tab_${subActive}`)
|
|
|
commit('SET_LOADING', false)
|
|
|
+ dispatch('initPeople')
|
|
|
}
|
|
|
}
|
|
|
},
|
|
@@ -634,7 +655,7 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
// 获取查看月报数据
|
|
|
- async getSubReportData({ commit, state }, { id, subReportId, tabsActive }) {
|
|
|
+ async getSubReportData({ dispatch, commit, state }, { id, subReportId, tabsActive }) {
|
|
|
const { pageType } = state
|
|
|
let params = {}
|
|
|
const method =
|
|
@@ -679,6 +700,7 @@ export default {
|
|
|
id: pageType.search(/All/) > -1 ? `${id}` : `${res.data.parentId}`,
|
|
|
name: pageType.search(/All/) > -1 ? '' : res.data.reportName
|
|
|
})
|
|
|
+ dispatch('initPeople')
|
|
|
}, 700)
|
|
|
}
|
|
|
},
|
|
@@ -959,6 +981,23 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ },
|
|
|
+ // 人员数据初始化
|
|
|
+ initPeople({ commit, state }) {
|
|
|
+ if (state.timeout !== null) {
|
|
|
+ clearTimeout(state.timeout)
|
|
|
+ }
|
|
|
+ state.timeout = setTimeout(async() => {
|
|
|
+ const res = await getListPerson({ memberIDAPs: state.peopleLists })
|
|
|
+ if (res.code === 200 && res.data && res.data.length) {
|
|
|
+ const userNames = {}
|
|
|
+ res.data.forEach(elm => {
|
|
|
+ const { idap, name } = elm
|
|
|
+ userNames[idap] = name
|
|
|
+ })
|
|
|
+ state.userNames = userNames
|
|
|
+ }
|
|
|
+ }, 400)
|
|
|
}
|
|
|
}
|
|
|
}
|