From c5b7788a691f1ac4bc22c26e0203626cfdc3555f Mon Sep 17 00:00:00 2001
From: 王震 <10952869+daywangzhen@user.noreply.gitee.com>
Date: 星期一, 06 十一月 2023 10:37:21 +0800
Subject: [PATCH] 	modified:   src/views/quality/processconfiguration/index.vue 	modified:   src/views/quality/rawMaterial/index.vue

---
 src/views/quality/processconfiguration/index.vue |  408 ++++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 327 insertions(+), 81 deletions(-)

diff --git a/src/views/quality/processconfiguration/index.vue b/src/views/quality/processconfiguration/index.vue
index 6302a67..ab26a76 100644
--- a/src/views/quality/processconfiguration/index.vue
+++ b/src/views/quality/processconfiguration/index.vue
@@ -3,6 +3,8 @@
     <basic-container>
       <ttable
         :table="table"
+        :resultData="resultData"
+        @change ="costPlannedAmountChange"
         @handleSelectionChange="handleSelectionChange"
         :uploadInfo="uploadInfo"
         :isShowHide="true"
@@ -19,23 +21,74 @@
         ref="addOrUpdate"
         @refreshDataList="getData"
       ></table-form>
+      <table></table>
     </basic-container>
+    <div>
+      <el-dialog title="鏈�缁堝缃剰瑙�" :visible.sync="dialogVisible" width="30%">
+            <el-form label-width="120px">
+                <div v-if="type === '鍘熸潗鏂欐楠�'">
+                    <!-- <el-form-item label="鏈�缁堝缃剰瑙侊細">
+                        <el-input type="textarea" :rows="3" placeholder="璇疯緭鍏ュ唴瀹�"  v-model="WayIdea" />
+                    </el-form-item> -->
+                    <el-radio-group v-model="checkList">
+                      <el-radio label="杩斾慨">杩斾慨</el-radio>
+                      <el-radio label="鎹㈣揣">鎹㈣揣</el-radio>
+                      <el-radio label="閫�璐�">閫�璐�</el-radio>
+                      <el-radio label="璁╂鎺ユ敹">璁╂鎺ユ敹</el-radio>
+                      <el-radio label="鎺ユ敹">鎺ユ敹</el-radio>
+                    </el-radio-group>
+                </div>
+                <div v-if="type === '浜у搧妫�楠�' ">
+                    <el-radio-group v-model="checkList">
+                      <el-radio label="杩斾慨">杩斾慨</el-radio>
+                      <el-radio label="鎺ユ敹">鎺ユ敹</el-radio>
+                      <el-radio label="闄嶇骇浣跨敤">闄嶇骇浣跨敤</el-radio> 
+                      <el-radio label="鎶ュ簾">鎶ュ簾</el-radio> 
+                      <el-radio label="闄嶄负浠栫敤">闄嶄负浠栫敤</el-radio> 
+                    </el-radio-group>
+                </div>
+                <div v-if="type ===  '杩囩▼妫�楠�'">
+                    <el-radio-group v-model="checkList">
+                      <el-row>
+                          <div style="padding: 20px;">
+                          <el-radio label="杩斾慨">杩斾慨</el-radio>
+                          <el-radio label="鎺ユ敹">鎺ユ敹</el-radio>
+                          <el-radio label="闄嶇骇浣跨敤">闄嶇骇浣跨敤</el-radio> 
+                          <el-radio label="鎶ュ簾">鎶ュ簾</el-radio> 
+                          </div>
+                          <div style="padding: 20px;">
+                          <el-radio label="杩斿伐">杩斿伐</el-radio> 
+                          <el-radio label="闄嶄负浠栫敤">闄嶄负浠栫敤</el-radio> 
+                          </div>
+                    </el-row>
+                    </el-radio-group>
+                </div>
+            </el-form>
+            <span slot="footer" >
+                <el-button @click="dialogVisible = false">鍙� 娑�</el-button>
+                <el-button type="primary" @click="WaySure()">纭� 瀹�</el-button>
+            </span>
+        </el-dialog>
+    </div>
   </div>
 </template>
 
 <script>
-import {
-  getqualityUnqualifiedConfiguration,
-  delqualityUnqualifiedConfiguration
+import { UnqualifiedList,pullInsUnapi,AuditSuggestion
 } from '@/api/quality/unqualifiedprocess'
 import TableForm from './table-form'
 import { mapGetters } from 'vuex'
-import { remote } from '@/api/admin/dict'
+// import { remote } from '@/api/admin/dict'
 import ttable from '@/views/common/ztt-table.vue'
 export default {
   data() {
     return {
-      ajaxFun: getqualityUnqualifiedConfiguration,
+      resultData:[],
+      checkList: "",
+      // WayIdea:'',
+      UserId:{},
+      type:'',
+      ajaxFun: UnqualifiedList,pullInsUnapi,AuditSuggestion,
       addOrUpdateVisible: false,
       multipleSelection: [],
       typeOptions: [],
@@ -45,6 +98,7 @@
         isShow: false,
         url: ''
       },
+      dialogVisible: false,
       prelang: 'operation',
       options: {
         height: 300, // 榛樿楂樺害-涓轰簡琛ㄥご鍥哄畾
@@ -56,7 +110,8 @@
         multiSelect: true, //
         seqNo: true,
         isShowHide: true, // 鏄惁鏄剧ず鏄惧奖鎸夐挳
-        isSearch: false, // 楂樼骇鏌ヨ鎸夐挳
+        isRefresh: true, // 鏄惁鏄剧ず鍒锋柊鎸夐挳
+        isSearch: true, // 楂樼骇鏌ヨ鎸夐挳
         defaultOrderBy: { column: 'createTime', direction: 'desc' }
       },
       table: {
@@ -66,114 +121,305 @@
         data: [],
         // 鏍囬
         column: [
-          // 缂栧彿
+          // 浜у搧澶х被
           {
             minWidth: '140',
-            prop: 'workShop',
-            label: '杞﹂棿',
-            sort: true,
+            prop: 'type',
+            label: '妫�楠岀被鍨�',
+            isTrue: true,
+            isSearch: true,
+            searchInfoType: 'select',
+              formatter: this.materialTypeList,
+              optList: () => {
+                  return this.materialType
+            // render: { fun: this.addOrUpdateHandle }
+              }
+          },
+          // 浜у搧鍚嶇О
+          {
+            minWidth: '140',
+            prop: 'material',
+            label: '浜у搧鍚嶇О',
             isTrue: true,
             isSearch: true,
             searchInfoType: 'text',
-            render: { fun: this.addOrUpdateHandle }
           },
-          // 浜у搧绫诲瀷
-          {
-            minWidth: '120',
-            prop: 'type',
-            label: '浜у搧绫诲瀷',
-            sort: true,
+           // 瑙勬牸鍨嬪彿
+           {
+            minWidth: '140',
+            prop: 'specs',
+            label: '瑙勬牸鍨嬪彿',
             isTrue: true,
             isSearch: true,
-            searchInfoType: 'select',
-            formatter: this.formatType,
-            optList: () => {
-              return this.typeOptions
-            }
+            searchInfoType: 'text',
           },
-          // 澶勭悊鏂瑰紡
-          {
-            minWidth: '200',
-            prop: 'processMode',
-            label: '澶勭悊鏂瑰紡',
-            sort: true,
-            isTrue: true,
-            isSearch: true,
-            searchInfoType: 'select',
-            formatter: this.formatProcessMode,
-            optList: () => {
-              return this.processModeOptions
-            }
-          },
-          // 鍙戣捣浜�
-          //   {
-          //     minWidth: '200',
-          //     prop: 'originator',
-          //     label: '鍙戣捣浜�',
-          //     sort: true,
-          //     isTrue: true,
-          //     isSearch: true,
-          //     searchInfoType: 'text'
-          //   },
-          // 瀹℃牳浜�
           {
             minWidth: '140',
-            prop: 'examiner',
-            label: '瀹℃牳浜�',
-            sort: true,
+            prop: 'materialCode',
+            label: '闆朵欢鍙�',
             isTrue: true,
             isSearch: true,
-            searchInfoType: 'text'
+            searchInfoType: 'text',
           },
-          // 澶勭悊浜�
-          {
-            minWidth: '120',
-            prop: 'handler',
-            label: '澶勭悊浜�',
-            sort: true,
+           // 涓嶅悎鏍煎搧鏁伴噺
+           {
+            minWidth: '140',
+            prop: 'number',
+            label: '涓嶅悎鏍煎搧鏁伴噺',
             isTrue: true,
             isSearch: true,
-            searchInfoType: 'text'
-          }
+            searchInfoType: 'text',
+          },
+          {
+            minWidth: '140',
+            prop: 'reason',
+            label: '鐜拌薄鎻忚堪',
+            isTrue: true,
+            isSearch: true,
+            searchInfoType: 'text',
+          },
+            // 澶勭悊鎰忚
+            {
+            minWidth: '140',
+            prop: 'way',
+            label: '澶勭悊鎰忚',
+            isTrue: true,
+            isSearch: true,
+            searchInfoType: 'text',
+          },
+            {
+            minWidth: '120',
+              prop: 'faultyMaterials',
+              label: '鏄惁鐟曠柕',
+              isTrue: true,
+              isSearch: true,
+              searchInfoType: 'select',
+              formatter: this.flaw,
+              optList: () => {
+                  return this.insStateList
+              }
+          },
+          // 鐢宠浜�
+          {
+            minWidth: '140',
+            prop: 'createUser',
+            label: '鐢宠浜�',
+            isTrue: true,
+            isSearch: true,
+            searchInfoType: 'text',
+          },
+           // 鏃ユ湡
+          {
+               minWidth: '130',
+               width: '150',
+               prop: 'dealTime',
+               label: '瀹℃牳鏃堕棿',
+               sort: true,
+               isTrue: true,
+               isSearch: true,
+               searchInfoType: 'datetimerange',
+               formatter: this.formatDateTime,
+           },
+          {
+              minWidth: '120',
+              prop: 'state',
+              label: '鐘舵��',
+              isTrue: true,
+              isSearch: true,
+              searchInfoType: 'select',
+              formatter: this.formatInsState,
+              optList: () => {
+                  return this.StateList
+              }
+          },
+          // {
+          //   minWidth: '120',
+          //   prop: '',
+          //   label: '浜у搧鍚嶇О',
+          //   sort: true,
+          //   isTrue: true,
+          //   isSearch: true,
+          //   searchInfoType: 'select',
+          //   formatter: this.formatType,
+          //   optList: () => {
+          //     return this.typeOptions
+          //   }
+          // },
+          // 澶勭悊鏂瑰紡
+          // {
+          //   minWidth: '200',
+          //   prop: 'processMode',
+          //   label: '澶勭悊鏂瑰紡',
+          //   sort: true,
+          //   isTrue: true,
+          //   isSearch: true,
+          //   searchInfoType: 'select',
+          //   formatter: this.formatProcessMode,
+          //   optList: () => {
+          //     return this.processModeOptions
+          //   }
+          // },
+          //鍙戣捣浜�
+            // {
+            //   minWidth: '200',
+            //   prop: 'originator',
+            //   label: '鍙戣捣浜�',
+            //   sort: true,
+            //   isTrue: true,
+            //   isSearch: true,
+            //   searchInfoType: 'text'
+            // },
+          // 瀹℃牳浜�
+          // {
+          //   minWidth: '140',
+          //   prop: 'examiner',
+          //   label: '瀹℃牳浜�',
+          //   sort: true,
+          //   isTrue: true,
+          //   isSearch: true,
+          //   searchInfoType: 'text'
+          // },
+          // 澶勭悊浜�
+          // {
+          //   minWidth: '120',
+          //   prop: 'handler',
+          //   label: '澶勭悊浜�',
+          //   sort: true,
+          //   isTrue: true,
+          //   isSearch: true,
+          //   searchInfoType: 'text'
+          // },
+        
         ],
         toolbar: [
           {
-            text: '鏂板',
+            text: '瀵煎嚭',
             type: 'primary',
-            fun: this.addOrUpdateHandle
-          }
+            fun: this.handleExcel
+          },
         ],
         operator: [
+          // {
+          //   text: '鍒犻櫎',
+          //   type: 'text',
+          //   size: 'small',
+          //   fun: this.deleteHandle
+          // },
           {
-            text: '鍒犻櫎',
+            text: '鎻愪氦瀹℃牳',
             type: 'text',
             size: 'small',
-            fun: this.deleteHandle
+            fun: this.Submitreview
+          },
+          {
+            text: '瀹℃牳缁撴灉',
+            type: 'text',
+            size: 'small',
+            fun: this.AuditResult
           }
         ],
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
-          width: 100,
+          width: 150,
           minWidth: 100
         }
-      }
+      },
+      materialType: [{label:'鍘熸潗鏂欐楠�',value:'鍘熸潗鏂欐楠�'},{label:'杩囩▼妫�楠�',value:'杩囩▼妫�楠�'},{label:'浜у搧妫�楠�',value:'浜у搧妫�楠�'}],
+      StateList: [{label:'鍏ㄩ儴',value:''},{label:'宸叉彁浜ゅ鏍�',value:'1'},{label:'寰呭鐞�',value:'0'},{label:'宸插鐞�',value:'2'}],
+      insStateList: [{label:'鍏朵粬',value:''},{label:'鐟曠柕',value:'1'}],
     }
   },
   components: {
+    ttable,
     TableForm,
-    ttable
   },
   computed: {
     ...mapGetters(['permissions'])
+
   },
   created() {
-    this.getType()
+    // this.getType()
   },
   methods: {
+    async costPlannedAmountChange(value){
+            this.resultData= value
+        },
+    
+      handleExcel() {
+        console.log(this.resultData);
+        console.log(this.table.column);
+        let arr = this.table.column.filter(item => item.isTrue == true).map(item => {
+                    return{
+                        prop:item.prop,
+                        label:item.label
+                }
+            })
+        let opt = {
+          title: '鏂囨。鏍囬',
+          column: [{
+            label:'涓嶅悎鏍煎缃�',
+            prop:'header',
+            children:arr
+          }],
+          data: this.resultData
+        }
+        this.$Export.excel({
+          title: opt.title,
+          columns: opt.column,
+          data: opt.data
+        });
+      },
+    //瀹℃牳缁撴灉
+    AuditResult(row){
+      this.UserId = row.id
+      this.type = row.type
+      this.dialogVisible = true;
+
+    },
+    WaySure(){
+      AuditSuggestion({id:this.UserId,way:this.checkList}).then(
+        res =>{
+          this.checkList = null
+          this.WayIdea = null
+          this.$refs.processconfiguration.refreshData()
+          ;})
+      this.dialogVisible = false
+    },
+    //鎻愪氦瀹℃牳
+   Submitreview(row){
+      console.log(row.id);
+       pullInsUnapi({id:row.id}).then(res =>{
+        console.log(res);
+        this.$refs.processconfiguration.refreshData()
+       })
+    },
+   
+    //鐘舵��
+    formatInsState(row, column, cellValue){
+            if(cellValue != undefined || cellValue != null){
+                if(cellValue == 0){
+                    return "<span style='color:#E84738;'>寰呭鐞�</span>"
+                }
+                if(cellValue == 1){
+                  return "<span style='color:#34BD66;'>宸叉彁浜ゅ鏍�</span>"
+                }
+                if(cellValue == 2){
+                  return "<span style='color:#34BD66;'>宸插鐞�</span>"
+                }
+            }
+        },
+    flaw(row, column, cellValue){
+        if(cellValue != undefined || cellValue != null){
+            if(cellValue == 1){
+                return "<span style='color:#E84738;'>鐟曠柕鍝�</span>"
+            }
+            return "<span style='color:#34BD66;'></span>"
+        }
+    }, 
     // 鑾峰彇鏁版嵁鍒楄〃
     getData() {
-      this.$refs.processconfiguration.getDataList()
+      // this.$refs.processconfiguration.getDataList()
     },
     handleSelectionChange(val) {
       // 澶氳閫変腑
@@ -202,18 +448,18 @@
       })
       return cellValue
     },
-    getType() {
-      remote('unqualified_handle_type').then((response) => {
-        if (response.data.code === 0) {
-          this.typeOptions = response.data.data
-        }
-      })
-      remote('unqualified_process_mode').then((response) => {
-        if (response.data.code === 0) {
-          this.processModeOptions = response.data.data
-        }
-      })
-    },
+    // getType() {
+    //   remote('unqualified_handle_type').then((response) => {
+    //     if (response.data.code === 0) {
+    //       this.typeOptions = response.data.data
+    //     }
+    //   })
+    //   remote('unqualified_process_mode').then((response) => {
+    //     if (response.data.code === 0) {
+    //       this.processModeOptions = response.data.data
+    //     }
+    //   })
+    // },
     // 鍒犻櫎
     deleteHandle(row) {
       this.$confirm('鏄惁纭鍒犻櫎杞﹂棿涓猴細' + row.workShop, '鎻愮ず', {

--
Gitblit v1.9.3