From d5458eb28c1da630004b7679601bfd5474cd924d Mon Sep 17 00:00:00 2001
From: wjt <1797368093@qq.com>
Date: 星期三, 19 六月 2024 09:03:58 +0800
Subject: [PATCH] 企业管理添加

---
 src/views/infomanger/companymanger/components/exportRecord.vue |   99 ++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 92 insertions(+), 7 deletions(-)

diff --git a/src/views/infomanger/companymanger/components/exportRecord.vue b/src/views/infomanger/companymanger/components/exportRecord.vue
index 9be907c..a5d4de4 100644
--- a/src/views/infomanger/companymanger/components/exportRecord.vue
+++ b/src/views/infomanger/companymanger/components/exportRecord.vue
@@ -4,32 +4,82 @@
     <el-table :data="recordValue" border>
       <el-table-column label="浼佷笟鍚�(浼佷笟鍏ㄧО)" prop="companyName">
         <template #default="scope">
-          <el-input v-model="scope.row.companyName"></el-input>
+          <div class="flex-box-per">
+            <el-input v-model="scope.row.companyName" @blur="checkImport(scope.row, scope.$index)"></el-input>
+            <el-tooltip  v-if="scope.row.errorList.length && scope.row.errorList.find(item => item.index == 0)" :content="scope.row.errorList.find(item => item.index == 0).msg">
+              <div class="ml5">
+                <el-icon size="large" color="red" class="ml5"><CircleCloseFilled /></el-icon>
+              </div>
+            </el-tooltip>
+          </div>
         </template>
       </el-table-column>
       <el-table-column label="缁熶竴绀句細淇$敤浠g爜" prop="companyCode">
         <template #default="scope">
-          <el-input v-model="scope.row.companyCode"></el-input>
+          <div class="flex-box-per">
+            <el-input v-model="scope.row.companyCode"  @blur="checkImport(scope.row, scope.$index)"></el-input>
+            <el-tooltip  v-if="scope.row.errorList.length && scope.row.errorList.find(item => item.index == 1)" :content="scope.row.errorList.find(item => item.index == 1).msg">
+              <div class="ml5">
+                <el-icon size="large" color="red" class="ml5"><CircleCloseFilled /></el-icon>
+              </div>
+            </el-tooltip>
+      
+          </div>
         </template>
       </el-table-column>
       <el-table-column label="浼佷笟鑱旂郴浜�" prop="companyUser">
         <template #default="scope">
-          <el-input v-model="scope.row.companyUser"></el-input>
+          <div class="flex-box-per">
+            <el-input v-model="scope.row.companyUser"  @blur="checkImport(scope.row, scope.$index)"></el-input>
+            <el-tooltip  v-if="scope.row.errorList.length && scope.row.errorList.find(item => item.index == 2)" :content="scope.row.errorList.find(item => item.index == 2).msg">
+              <div class="ml5" v-if="scope.row.errorList.length &&scope.row.errorList.find(item => item.index == 2)">
+              <el-icon size="large" color="red" class="ml5"><CircleCloseFilled /></el-icon>
+            </div>
+            </el-tooltip>
+     
+          </div>
+      
         </template>
       </el-table-column>
       <el-table-column label="鑱旂郴浜虹數璇�" prop="companyPhone">
         <template #default="scope">
-          <el-input v-model="scope.row.companyPhone"></el-input>
+          <div class="flex-box-per">
+            <el-input type="numer" :maxlength="11" v-model="scope.row.companyPhone"  @blur="checkImport(scope.row, scope.$index, 'companyPhone')"></el-input>
+            <el-tooltip v-if="scope.row.errorList.length && scope.row.errorList.find(item => item.index == 3)" :content="scope.row.errorList.find(item => item.index == 3).msg">
+              <div class="ml5">
+              <el-icon size="large" color="red" class="ml5"><CircleCloseFilled /></el-icon>
+            </div>
+            </el-tooltip>
+   
+          </div>
+      
         </template>
       </el-table-column>
       <el-table-column label="浼佷笟鍦板潃" prop="companyAddress">
         <template #default="scope">
-          <el-input v-model="scope.row.companyAddress"></el-input>
+          <div class="flex-box-per">
+            <el-input v-model="scope.row.companyAddress"  @blur="checkImport(scope.row, scope.$index)"></el-input>
+            <el-tooltip v-if="scope.row.errorList.length && scope.row.errorList.find(item => item.index == 4)" :content="scope.row.errorList.find(item => item.index == 4).msg">
+              <div class="ml5" v-if="scope.row.errorList.length && scope.row.errorList.find(item => item.index == 4)">
+              <el-icon size="large" color="red" class="ml5"><CircleCloseFilled /></el-icon>
+            </div>
+            </el-tooltip>
+          </div>
+   
         </template>
       </el-table-column>
       <el-table-column label="澶囨敞" prop="mark">
         <template #default="scope">
-          <el-input v-model="scope.row.mark"></el-input>
+          <div class="flex-box-per">
+            <el-input v-model="scope.row.mark"  @blur="checkImport(scope.row, scope.$index)"></el-input>
+            <el-tooltip v-if="scope.row.errorList.length && scope.row.errorList.find(item => item.index == 5)" :content="scope.row.errorList.find(item => item.index == 5).msg">
+              <div class="ml5">
+              <el-icon size="large" color="red" class="ml5"><CircleCloseFilled /></el-icon>
+            </div>
+            </el-tooltip>
+         
+          </div>
+     
         </template>
       </el-table-column>
     </el-table>
@@ -43,7 +93,10 @@
 </template>
 
 <script setup lang="ts">
+import { checkImport as checkImportHttp, saveImport } from '@/api/system/company/company'
+import { ElMessage} from 'element-plus'
 const dialogVisible = ref(false)
+const emits = defineEmits()
 const props = defineProps({
   recordRow: { type: Array, default: () => [] },
 })
@@ -58,13 +111,45 @@
 function closeDialog() {
   dialogVisible.value = false
 }
+function checkImport(row, index, item) {
+  // row.companyPhone
+  if(item && item == 'companyPhone') {
+    if(row.companyPhone) {
+      const reg = /^1[3|4|5|6|7|8|9][0-9]\d{8}$/
+      if(!reg.test(row.companyPhone)){
+        ElMessage.error('璇疯緭鍏ユ纭殑鎵嬫満鍙�')
+      }
+    }
+  }
+  checkImportHttp({voList: [row]}).then(val => {
+    // recordValue.value.splice(index, 1, val.data.voList[0])
+    recordValue.value[index] = val.data.voList[0]
+    // ElMessage.success('淇敼鎴愬姛')
+  })
+}
+function addCompany() {
+  saveImport({voList: recordValue.value}).then(val =>{
+    ElMessage.success('淇敼鎴愬姛')
+    closeDialog()
+    emits('uploadList')
+  })
+}
 defineExpose({
   openDialog,
   closeDialog
 })
 </script>
-<style>
+<style >
 .dialog-footer{
   text-align: center;
 }
+.flex-box-per{
+  display: flex;
+  justify-content: flex-start;
+  align-items: center;
+}
+.ml5{
+  /* margin-left: 5px; */
+  line-height: 15px;
+}
 </style>
\ No newline at end of file

--
Gitblit v1.9.1