zck пре 1 година
родитељ
комит
76877e3075
1 измењених фајлова са 149 додато и 26 уклоњено
  1. 149 26
      src/view/performance/12-orderAccounting/index.vue

+ 149 - 26
src/view/performance/12-orderAccounting/index.vue

@@ -11,7 +11,9 @@
               <el-button type="primary"icon="edit"class="bt"@click=" () => { dialogDetail = true; } "><i class="el-icon-edit" />查改</el-button>
               <!--<el-button type="primary" disabled icon="edit" @click="" style="margin-left: 10px">工艺方案复制</el-button>-->
               <el-button type="primary" icon="edit" class="bt" @click=" () => { dialogGdcjstj = true; }">工单超节损统计</el-button>
-              <el-button type="primary" icon="edit" class="bt" @click=" () => { dialogKhsz = true}">考核设置</el-button>
+              <!-- <el-button type="primary" icon="edit" class="bt" @click=" () => { dialogKhsz = true}">考核设置</el-button> -->
+               
+              <el-button type="primary" icon="edit" class="bt" @click="dialogKhszclick">考核设置</el-button>
               <el-button type="primary" icon="edit" class="bt"@click=" () => { dialogXzgdtl = true; }">修正工单投料</el-button>
               <el-button type="primary" icon="edit" class="bt"@click=" () => { dialogGxclhc = true;}">工序产量核查</el-button>
               <el-button type="primary"icon="edit"class="bt"@click="() => {dialogGdzjfptj = true;}">工单质检废品统计</el-button>
@@ -69,8 +71,46 @@
 
             </el-dialog>
 
+
+            <el-dialog v-model="dialogkhszlog"  title="修正工单印件质量考核设置" destroy-on-close fullscreen >
+              <el-button  type="primary" style="width:80px; height: 40px;margin-bottom: 20px" @click="renew">更新</el-button>
+                  <el-button type="primary" style="width:80px; height: 40px;margin-bottom: 20px" @click="modelValuelog">退出</el-button>
+
+                  <el-form inline >
+                    <el-form-item label="工单编号"> 
+                      <el-input  v-model="gdbh"  style="width: 100px" @keyup.enter="handleGetTable" placeholder="Enter回车"/>
+                    </el-form-item>
+
+                    <el-form-item label="印件号"> 
+                      <el-input v-model="yjno"  style="width: 100px" @keyup.enter="handleGetTable" placeholder="Enter回车" />
+                    </el-form-item>
+
+                    <el-table :data="khsztableData" border height="70vh"
+                      :row-style="{ height: '20px' }" :cell-style="{ padding: '0px' }"
+                      :header-row-style="{ height: '20px' }" :header-cell-style="{ padding: '0px' }" >
+                      <el-table-column label="工单编号" width="100" prop="Yj_gdbh"/>
+                      <el-table-column label="印件编码" width="100" prop="yj_Yjdh"/>
+                      <el-table-column label="印件号" width="100" prop="yj_Yjno"/>
+                      <el-table-column label="印件名称" width="400" prop="yj_yjmc"/>
+                      <el-table-column label="当前考核设置" width="150" prop="当前考核设置"/>
+                      <el-table-column label="新考核设置" width="150">
+                        <template #default="{ row }">
+                        <!-- 使用 el-select 来创建选择框 -->
+                        <el-select v-model="row.新考核设置" placeholder="请选择">
+                          <el-option label="参与" value="参与"/>
+                          <el-option label="剔除" value="剔除"/>
+                        </el-select>
+                      </template>
+                      </el-table-column>
+                    </el-table>
+                  </el-form>
+                  
+            </el-dialog>
+
+            <!-- 修正工单投料 -->
+
             <!-- 修正工单印件质量考核设置 -->
-            <Khsz v-if="dialogKhsz" v-model="dialogKhsz" :gdbh="gdbh" :yjno="yjno" />
+            <!-- <Khsz v-if="dialogKhsz" v-model="dialogKhsz" :gdbh="gdbh" :yjno="yjno" /> -->
 
             <!-- 修正工单投料 -->
             <Xzgdtl v-if="dialogXzgdtl" v-model="dialogXzgdtl" @update-data = "exitXzgdtl" :gdbh="gdbh" :yjno="yjno"/>
@@ -263,6 +303,21 @@ export const getOrderProcessRight = (params) => {
     params,
   })
 }
+// 4.1考核设置-获取工单印件资料
+export const getOrderYj = (params) => {
+  return service({
+    url: '/mes_server/order_super_loss/getOrderYj',
+    method: 'get',
+    params
+  })
+}
+export const updateOrderYj = (params) => {
+  return service({
+    url: '/mes_server/order_super_loss/updateOrderYj',
+    method: 'get',
+    params
+  })
+}
 </script>
 <script setup>
 import { ElMessage, ElMessageBox } from 'element-plus'
@@ -279,7 +334,7 @@ import {
   EmployeeDataCollect,
   getTable,
 } from '@/api/mes_api_gty/orderAccounting'
-import Khsz from '@/view/performance/12-orderAccounting/componets/khsz.vue'
+// import Khsz from '@/view/performance/12-orderAccounting/componets/khsz.vue'
 import {hiprint} from "vue-plugin-hiprint";
 import Gdcjstj from '@/view/performance/12-orderAccounting/componets/gdcjstj.vue'
 import Xzgdtl from '@/view/performance/12-orderAccounting/componets/xzgdtl.vue'
@@ -300,12 +355,89 @@ const sys_id =
 // 弹窗
 const dialogGdcjstj = ref(false)
 const dialogDetail = ref(false)
-const dialogKhsz = ref(false)
+// const dialogKhsz = ref(false)
 const dialogXzgdtl = ref(false)
 const dialogGxclhc = ref(false)
 const dialogGdzjfptj = ref(false)
 const dialogHjfpfb = ref(false)
 
+
+//===========考核设置==============
+
+//弹窗
+const dialogkhszlog = ref(false)
+// 考核设置按钮
+const dialogKhszclick = async() => {
+  if (!gdbh.value?.trim() && !yjno.value?.trim()) {
+  	ElMessage.error('请先选择工单后再点击此按钮')
+    return
+  }
+  dialogkhszlog.value = true;
+  console.log('工单编号',gdbh.value)
+  console.log('印件编号',yjno.value)
+  const res = await getOrderYj({ order: gdbh.value ,yjno:yjno.value})
+  if (res['code'] === 0) {
+    const { data } = res
+    data['当前考核设置'] = data['质量考核'] === 0 ? '参与' : '剔除'
+    data['新考核设置'] = data['当前考核设置']
+    const arr = [data]
+    console.log(arr)
+    khsztableData.value = arr
+  }
+}
+
+
+//表格
+const khsztableData = ref([])
+//更新按钮
+const renew = async() => {
+  let params = {};
+  params.order = khsztableData.value['0']['Yj_gdbh']
+  params.yj_yjno = khsztableData.value['0']['yj_Yjno']
+  params.examine = khsztableData.value['0']['新考核设置']
+  console.log(params)
+    const res = await updateOrderYj(params);
+    if (res['code'] === 0) {
+    ElMessage({type: 'success',message: '更新成功'})
+    //更新成功刷新表格,获取最新的数据
+    const res = await getTable({ date:cjsriqi.value, code: _code.value, limit: 9999, page: 1 });
+    console.log(res.data.data); // 调试数据
+    tableData1.value = res.data.data.map((item) => ({
+      ...item,
+      csgd:
+        parseFloat(item['target_rate']) - parseFloat(item['real_rate']) > 0
+          ? '√'
+          : '',
+      date: date,
+      考核: String(item['考核']) === '是' ? '参与' : '否' // 确保数据类型一致
+    }));
+    
+  } else {
+    ElMessage({type: 'error',message: '更新失败'})
+  }
+  console.log(res)  
+}
+
+
+const handleGetTable = async() => {
+  const res = await getOrderYj({ order: gdbh.value ,yjno:yjno.value})
+  if (res['code'] === 0) {
+    const { data } = res
+    data['当前考核设置'] = data['质量考核'] === 0 ? '参与' : '剔除'
+    data['新考核设置'] = data['当前考核设置']
+    const arr = [data]
+    console.log(arr)
+    tableData.value = arr
+  }
+}
+//退出按钮
+const modelValuelog = async() => {
+  dialogkhszlog.value = false;
+}
+
+
+
+
 // 侧边栏数据
 const treeData = ref([])
 const getSideData = async() => {
@@ -391,12 +523,14 @@ watch(currentRow, (value, oldValue, onCleanup) => {
 })
 
 const cjsriqi = ref ('')
+const _code = ref('')
 // 显示上方表格
 const handleNodeClick = async (node) => {
   cjsriqi.value = node.date;
-  console.log(cjsriqi.value);
   if (!node.children) {
     const { date, code } = node;
+    //全局客户编号
+    _code.value =  code
     const res = await getTable({ date, code, limit: 9999, page: 1 });
     console.log(res.data.data); // 调试数据
     tableData1.value = res.data.data.map((item) => ({
@@ -443,6 +577,7 @@ const showOrderSuperLossGy = async() => {
     }))
   }
 }
+
 // 定位
 const  handleSearch = async() => {
   console.log(searchInfo.value)
@@ -457,30 +592,18 @@ const  handleSearch = async() => {
           : '',
       date: date,
     }))
-
-
-
-
-  // if (searchInfo.value) {
-  //   tableData1.value = tableData1.value.filter((item) => {
-  //     return item['Gd_gdbh'] === searchInfo.value ?? item
-  //   })
-  // }
-}
-
-/* const rowClassName = ({ row, rowIndex }) => {
-  if (row['csgd'] === '√') {
-    return 'yellow-row'
   }
-  return ''
-}*/
 
-  function cellClassName({ row, column, rowIndex, columnIndex }) {
-    if ([7, 11, 13, 21].includes(columnIndex)) {
-      return 'red-cell'
-    }
-    return ''
+  //上方表格字体颜色
+function cellClassName({ row, column, rowIndex, columnIndex }) {
+  if(column.property === '考核' && row.考核 === '参与'){
+    return 'red-cell'
   }
+  if ([7, 11, 13, 21].includes(columnIndex)) {
+    return 'red-cell'
+  }
+  return ''
+}
 
 const printPageRef = ref()
 function handleGddy() {