洪海涛 4 жил өмнө
parent
commit
4e1bde5d8f

+ 7 - 1
src/store/modules/monthlyReport/edit/utils.js

@@ -114,10 +114,13 @@ export function readOnlyTableArrToObj(arr, headerList) {
   newArr.forEach((elm) => {
     const obj = {}
     headerList.forEach((helm, index) => {
-      const { headerKey } = helm
+      const { headerKey, displayType } = helm
       const item = elm.tableItems[index]
       if (item) {
         obj[headerKey] = item
+        if (displayType.search(/Cascader|CascaderSingle/) > -1) {
+          obj[headerKey].value = strToArr(obj[headerKey].value)
+        }
       }
     })
     newObj.push(obj)
@@ -188,6 +191,9 @@ export function readOnlyTableObjToArr(obj, tableHeaders) {
       if (!elms.tableItems) {
         elms.tableItems = []
       }
+      if (item.displayType && item.displayType.search(/Cascader|CascaderSingle/) > -1) {
+        param.value = JSON.stringify(param.value)
+      }
       elms.tableItems.push(param)
     })
     newArr.push(elms)

+ 8 - 2
src/views/monthlyReport/childrenPage/editReport/components/ReadOnlyTable.vue

@@ -28,7 +28,11 @@
           :fixed="isFixed(item, itemIndex, columns)"
         >
           <template slot-scope="scope">
-            <div class="edit-wrapper">
+            <!-- 团队多选 -->
+            <div v-if="item.displayType === 'Cascader'">
+              <CascaderInfo :team-data="scope.row[item.headerKey].value" />
+            </div>
+            <div v-else class="edit-wrapper">
               <span class="edit-cell" @click.stop="query(scope, itemIndex)" v-html="scope.row[item.headerKey].value" />
             </div>
           </template>
@@ -51,10 +55,12 @@ import _ from 'lodash'
 import { uuid10 } from '@/utils'
 import drawerAll from '@/views/quality/components/drawerAll'
 import Clickoutside from 'element-ui/src/utils/clickoutside'
+// import Cascader from '../Cascader'
+import CascaderInfo from './CascaderInfo'
 
 export default {
   name: 'ReadOnlyTable',
-  components: { drawerAll },
+  components: { drawerAll, CascaderInfo },
   directives: { Clickoutside },
   props: {
     plusTableDataBottom: {