ソースを参照

库存管理用料分析切换展示

duanxiaoduan 1 年間 前
コミット
46ae49349d

+ 81 - 83
src/views/statisticalAnalysis/inventoryManagement/pasture/index.vue

@@ -122,10 +122,10 @@
         <span v-if="tab2.table.listLoading == false && tab2.table.list.length>0" style="margin-right: 30px;margin-top: 10px;font-size: 14px;">共{{ tab2.table.total }}条</span>
         </div>
         <div v-else>
-           <el-table :data="tableData" :span-method="objectSpanMethod" v-loading="tab2.table.listLoading" :row-style="rowStyle" :cell-style="cellStyle" :max-height="myHeight2" use-virtual :row-height="rowHeight" border>
-              <el-table-column v-for="(column, index) in tableColumns" :key="index" :prop="column.prop" :label="column.label" align="center">
-              </el-table-column>
-            </el-table>
+          <!-- 新展示 -->
+          <u-table :span-method="objectSpanMethod" ref="plTable22" v-loading="tab2.table.listLoading" :row-style="rowStyle" :cell-style="cellStyle" :max-height="myHeight2" use-virtual :row-height="rowHeight" border class="elTable table-fixed plTable2">
+            <u-table-column v-for="(column, index) in tableColumns" sortable :key="index" :prop="column.prop" :label="column.label" align="center"></u-table-column>
+          </u-table>
         </div>
       </el-tab-pane>
       <el-tab-pane label="价格分析" name="third">
@@ -320,6 +320,9 @@ export default {
       isTable1:true,
       spanObj: {},
       mergekeys: ['A', 'B'],
+      tableColumns:[],
+      myData:{},
+      columnsToTotal: ['10-配种']
     }
   },
   created() {
@@ -473,72 +476,87 @@ export default {
       setTimeout(()=>{
         this.isDispayTable2 = true
         this.$nextTick(() => {
-          let myList = []
-          GetReportform(this.tab2.table.getdataListParm).then(response => {
-            if (response.data !== null && response.data.data !== null && response.data.data1 !== null) {
-              this.tab2.table.data = response.data.data
-              response.data.feedcode.push('')
-              response.data.feedcode.unshift('饲料编码')
-              for (let i = 0; i < response.data.list.data2.length; i++) {
-                console.log(response.data.list.data2[i],'===label')
-                for (let j = 0; j < response.data.list.data1.length; j++) {
-                  for (let a = 0; a < response.data.list.data2[i].children.length; a++) {
-                    if (response.data.list.data1[j][response.data.list.data2[i].children[a].prop] == undefined || response.data.list.data1[j][response.data.list.data2[i].children[a].prop] == null || response.data.list.data1[j][response.data.list.data2[i].children[a].prop] == '') {
-                      response.data.list.data1[j][response.data.list.data2[i].children[a].prop] = 0
-                    }
-                  }
-                }
-                if (response.data.list.data2[i].children.length > 1) {
-                  for (let j = 0; j < response.data.list.data2[i].children.length; j++) {
-                    if (response.data.list.data2[i].children[j].label == '理论' || response.data.list.data2[i].children[j].label == '实际') {
-                      this.$set(response.data.list.data2[i].children[j], 'width', '80px')
-                    } else {
-                      this.$set(response.data.list.data2[i].children[j], 'width', '80px')
-                    }
-                  }
-                } else {
-                  this.$set(response.data.list.data2[i].children[0], 'width', '80px')
-                }
-              }
-              let list = response.data.list.data2
-              let code = response.data.feedcode
-              const headers = []
-              for(let i=0;i<list.length;i++){
-                for(let j=0;j<code.length;j++){
-                  if(i== j){
-                    let obj = {
-                      label:code[j],
-                      children:[
-                        list[i]
-                      ]
+          let myList = []
+          if(this.isTable1){
+            this.tab2.table.getdataListParm.parammaps.mode = 0
+          }else{
+            this.tab2.table.getdataListParm.parammaps.mode = 1
+          }
+          GetReportform(this.tab2.table.getdataListParm).then(response => {
+            if(this.isTable1){
+              if (response.data !== null && response.data.data !== null && response.data.data1 !== null) {
+                this.tab2.table.data = response.data.data
+                response.data.feedcode.push('')
+                response.data.feedcode.unshift('饲料编码')
+                for (let i = 0; i < response.data.list.data2.length; i++) {
+                  // console.log(response.data.list.data2[i],'===label')
+                  for (let j = 0; j < response.data.list.data1.length; j++) {
+                    for (let a = 0; a < response.data.list.data2[i].children.length; a++) {
+                      if (response.data.list.data1[j][response.data.list.data2[i].children[a].prop] == undefined || response.data.list.data1[j][response.data.list.data2[i].children[a].prop] == null || response.data.list.data1[j][response.data.list.data2[i].children[a].prop] == '') {
+                        response.data.list.data1[j][response.data.list.data2[i].children[a].prop] = 0
+                      }
                     }
-                    headers.push(obj)
+                  }
+                  if (response.data.list.data2[i].children.length > 1) {
+                    for (let j = 0; j < response.data.list.data2[i].children.length; j++) {
+                      if (response.data.list.data2[i].children[j].label == '理论' || response.data.list.data2[i].children[j].label == '实际') {
+                        this.$set(response.data.list.data2[i].children[j], 'width', '80px')
+                      } else {
+                        this.$set(response.data.list.data2[i].children[j], 'width', '80px')
+                      }
+                    }
+                  } else {
+                    this.$set(response.data.list.data2[i].children[0], 'width', '80px')
                   }
                 }
-              }
-              myList = response.data.list.data1
-              this.tab2.table.list = response.data.list.data1
-              this.tab2.table.tableConfig = headers
-              this.tab2.table.total = response.data.list.data1.length
-              console.log('库存统计-用料分析this.tab2.table.data', response.data.data)
-              console.log('库存统计-用料分析this.tab2.table.feedcode', response.data.feedcode)
-              console.log('库存统计-用料分析this.tab2.table.list', response.data.list.data1)
-              console.log('库存统计-用料分析this.tab2.table.tableConfig',response.data.list.data2)
-            } else {
-              myList = []
-              this.tab2.table.list = []
-              this.tab2.table.tableConfig = []
+                let list = response.data.list.data2
+                let code = response.data.feedcode
+                const headers = []
+                for(let i=0;i<list.length;i++){
+                  for(let j=0;j<code.length;j++){
+                    if(i== j){
+                      let obj = {
+                        label:code[j],
+                        children:[
+                          list[i]
+                        ]
+                      }
+                      headers.push(obj)
+                    }
+                  }
+                }
+                myList = response.data.list.data1
+                this.tab2.table.list = response.data.list.data1
+                this.tab2.table.tableConfig = headers
+                this.tab2.table.total = response.data.list.data1.length
+
+                console.log('库存统计-用料分析this.tab2.table.data', response.data.data)
+                console.log('库存统计-用料分析this.tab2.table.feedcode', response.data.feedcode)
+                console.log('库存统计-用料分析this.tab2.table.list', response.data.list.data1)
+                console.log('库存统计-用料分析this.tab2.table.tableConfig',response.data.list.data2)
+              } else {
+                myList = []
+                this.tab2.table.list = []
+                this.tab2.table.tableConfig = []
+              }
+
+              console.log(this.tab2.table.list.length)
+              this.$refs.plTable2.reloadData(myList)
+            }else{
+              this.myData = response.data
+              this.tableColumns = response.data.columns;
+              this.tableData = response.data.data;
+              this.$refs.plTable22.reloadData(this.tableData)
+              this.handleSpan()
             }
-
-            console.log(this.tab2.table.list.length)
-            this.$refs.plTable2.reloadData(myList)
             setTimeout(() => {
               this.tab2.table.listLoading = false
             }, 100)
           })
         })
       })
-    },
+    },
+
     changeRadio2() {
       console.log(this.tab2.radio)
       if (this.tab2.radio == '1') {
@@ -825,29 +843,8 @@ export default {
       this.form_search('second')
     },
     handlesWitch(item){
-      console.log(item)
       this.isTable1 = !this.isTable1
-      if(!this.isTable1){
-        let data = {
-            "columns": [
-              { prop: 'A', label: '饲料编码' },
-              { prop: 'B', label: '饲料名称' },
-              { prop: "C", label: "牲畜类别" },
-              { prop: "D", label: "3-4月龄" }
-            ],
-            "data":  [
-              { A: "111", B: "饲料1", C: "理论", D: "6666" },
-              { A: "111", B: "饲料1", C: "实际",D: "6666" },
-              { A: "222", B: "饲料2", C: "理论", D: "6666" },
-              { A: "222", B: "饲料2", C: "理论", D: "6666" }
-          ]
-        }
-        this.tableColumns = data.columns;
-        this.tableData = data.data;
-        this.handleSpan()
-      }else{
         this.getTab2List()
-      }
     },
     handleSpan() {
       this.mergekeys.forEach(key => {
@@ -882,8 +879,9 @@ export default {
     objectSpanMethod({ row, column, rowIndex, columnIndex }) {
       for (let i = 0; i < this.mergekeys.length; i++) {
         if (column.property === this.mergekeys[i]) {
-          const _row = this.spanObj[this.mergekeys[i]][rowIndex]
-          const _col = _row > 0 ? 1 : 0
+          let _row = this.spanObj[this.mergekeys[i]][rowIndex]
+          let _col = _row > 0 ? 1 : 0
+          console.log(_row,'_row1')
           return {
             rowspan: _row,
             colspan: _col