Sfoglia il codice sorgente

月报分析反馈改造

洪海涛 4 anni fa
parent
commit
0f1cbf1718

+ 3 - 1
src/store/modules/monthlyReport/utils/index.js

@@ -182,7 +182,9 @@ export function analyticFeedbackToObj(obj) {
   newObj.analyticContents.forEach((elm) => {
     _.isArray(elm.improvementItems) &&
     elm.improvementItems.forEach((item) => {
-      item.personInCharge = item.personInCharge ? strToArr(item.personInCharge) : []
+      if (item.personInCharge.search(/\[|\]/g) > -1) {
+        item.personInCharge = item.personInCharge ? strToArr(item.personInCharge) : []
+      }
       // peopleLists = Array.from(new Set([...peopleLists, ...item.personInCharge]))
     })
   })

+ 12 - 8
src/views/monthlyReport/childrenPage/editReport/components/MrTable/Analysis.vue

@@ -131,6 +131,7 @@
         </span>
       </div>
       <el-button
+        v-if="feedbackCharge"
         type="text"
         icon="el-icon-plus"
         @click.stop="addItem"
@@ -228,10 +229,18 @@ export default {
     },
     // 设置人员账号
     setUserNamesList() {
+      const username = localStorage.getItem('username')
       this.userNamesList = this.options.map(elm => ({
         label: this.userNames[elm],
         value: elm
       }))
+
+      if (this.options.filter(elm => elm === username).length && this.isCommittedUser.indexOf(username) < 0) {
+        this.feedbackCharge = username
+      } else {
+        // console.log(this.userNamesList)
+        this.feedbackCharge = this.userNamesList.filter(elm => this.isCommittedUser.indexOf(elm.value) < 0)[0].value || ''
+      }
     },
     // 设置富文本内容
     setContentItem(value) {
@@ -246,7 +255,7 @@ export default {
     initAnalysis() {
       let peopleKey = ''
       // let peoples = ''
-      const username = localStorage.getItem('username')
+
       // 找到 责任人 的 headerKey
       this.columns.forEach(clickItem => {
         if (!peopleKey && clickItem.name === '责任人') {
@@ -277,12 +286,6 @@ export default {
           }
         })
       }
-
-      if (this.options.filter(elm => elm === username).length && this.isCommittedUser.indexOf(username) < 0) {
-        this.feedbackCharge = username
-      } else {
-        this.feedbackCharge = ''
-      }
     },
     addItem() {
       const analyticFeedbackList = [...this.analyticFeedbackList]
@@ -373,7 +376,7 @@ export default {
         analyticFeedbackList.forEach(elm => {
           if (elm.feedbackCharge === this.feedbackCharge) {
             elm.isCommitted = false
-            elm.feedbackType = 'feedback_commit'
+            elm.feedbackType = ''
           }
         })
       }
@@ -381,6 +384,7 @@ export default {
       this.$emit('upData', {
         analyticFeedbackList,
         rowIndex,
+        isFeedbackType: key === 'Submission',
         feedbackCharge: this.feedbackCharge,
         isReplaceTheFeedbackPerson: this.isReplaceTheFeedbackPerson
       })

+ 10 - 4
src/views/monthlyReport/childrenPage/editReport/components/MrTable/index.vue

@@ -564,8 +564,15 @@ export default {
         subReportid: command.id
       })
     },
-    // 分析反馈问题更新
-    upDataAnalysis({ rowIndex, analyticFeedbackList, feedbackCharge, isReplaceTheFeedbackPerson }) {
+    /**
+     * 分析反馈问题更新
+     * rowIndex, 提交时的下标
+     * analyticFeedbackList, 新版的分析反馈的数组,里面的各个item 对应原来的 analyticFeedback 字段
+     * feedbackCharge,
+     * isReplaceTheFeedbackPerson,
+     * isFeedbackType
+     * */
+    upDataAnalysis({ rowIndex, analyticFeedbackList, feedbackCharge, isReplaceTheFeedbackPerson, isFeedbackType }) {
       console.log(rowIndex, analyticFeedbackList, isReplaceTheFeedbackPerson)
       analyticFeedbackList.forEach(elm => {
         // if (elm.feedbackCharge === feedbackCharge && isReplaceTheFeedbackPerson) {
@@ -583,8 +590,7 @@ export default {
         // if (analyticFeedback.hasOwnProperty('feedbackType')) {
         //   feedbackType = 'feedbackType'
         // }
-        console.log(this.tableData)
-        this.setAnalyticFeedback('feedbackType', feedbackCharge)
+        this.setAnalyticFeedback(isFeedbackType ? 'feedbackType' : '', feedbackCharge)
         this.setExpandRowKeys()
       }
     },