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