From 8cdb97cc8deb54a10daa4ead830d94b7994a22f6 Mon Sep 17 00:00:00 2001
From: wjt <1797368093@qq.com>
Date: 星期四, 15 八月 2024 09:17:46 +0800
Subject: [PATCH] 修改绑定事件

---
 src/views/infomanger/companymanger/index.vue |  122 ++++++++++++++++++++++++++++++----------
 1 files changed, 92 insertions(+), 30 deletions(-)

diff --git a/src/views/infomanger/companymanger/index.vue b/src/views/infomanger/companymanger/index.vue
index 97b7cf0..b6a7d70 100644
--- a/src/views/infomanger/companymanger/index.vue
+++ b/src/views/infomanger/companymanger/index.vue
@@ -1,17 +1,17 @@
 <template>
   <div class="app-container">
-    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="80px">
+    <el-form :model="queryParams" ref="queryRef"  class="evenly-distributed-labels" :inline="true" v-show="showSearch" label-width="80px" label-position="left">
       <el-form-item label="浼佷笟鍚嶇О" prop="companyName">
         <el-input v-model="queryParams.companyName" placeholder="璇疯緭鍏ヤ紒涓氬悕绉�" clearable style="width: 200px" @keyup.enter="handleQuery" />
       </el-form-item>
       <el-form-item label="浼佷笟缂栧彿" prop="companyCode">
         <el-input v-model="queryParams.companyCode" placeholder="璇疯緭鍏ヤ紒涓氱紪鍙�" clearable style="width: 200px" @keyup.enter="handleQuery" />
       </el-form-item>
-      <el-form-item label="浼佷笟绫诲瀷" prop="status">
+      <!-- <el-form-item label="浼佷笟绫诲瀷" prop="status">
         <el-select v-model="queryParams.status" placeholder="浼佷笟绫诲瀷" clearable style="width: 200px">
           <el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label" :value="dict.value" />
         </el-select>
-      </el-form-item>
+      </el-form-item> -->
       <el-form-item label="鑱旂郴浜�" prop="companyUser">
         <el-input v-model="queryParams.companyUser" placeholder="璇疯緭鍏ヨ仈绯讳汉" clearable style="width: 200px" @keyup.enter="handleQuery" />
       </el-form-item>
@@ -39,11 +39,14 @@
         <el-button type="primary" plain icon="Plus" @click="handleAdd()" v-hasPermi="['system:dept:add']">鏂板</el-button>
       </el-col>
       <el-col :span="1.5">
-        <el-button type="primary" plain icon="Plus" @click="exportExcel" v-hasPermi="['system:dept:add']">瀵煎叆</el-button>
+        <el-button type="primary" plain icon="Upload" @click="exportExcel" v-hasPermi="['system:dept:add']">瀵煎叆</el-button>
       </el-col>
       <el-col :span="1.5">
-        <el-button type="primary" plain icon="Plus" @click="exportRecordComOpen" v-hasPermi="['system:dept:add']">瀵煎叆璁板綍</el-button>
+        <el-button type="primary" plain icon="Download" @click="downLoadCode">涓嬭浇浼佷笟鐮�</el-button>
       </el-col>
+      <!-- <el-col :span="1.5">
+        <el-button type="primary" plain icon="Plus" @click="exportRecordComOpen" v-hasPermi="['system:dept:add']">瀵煎叆璁板綍</el-button>
+      </el-col> -->
       <!-- <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> -->
     </el-row>
 
@@ -51,13 +54,16 @@
       v-if="refreshTable"
       v-loading="loading"
       :data="deptList"
-      row-key="deptId"
+      row-key="companyId"
       :default-expand-all="isExpandAll"
       :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
-    >
+      @selection-change="handleSelectionChange"
+     >
+      <el-table-column type="selection" width="55" :reserve-selection="true"/>
       <el-table-column  prop="companyName" label="浼佷笟鍚嶇О" minWidth="300"></el-table-column>
-      <el-table-column prop="companyName" label="浼佷笟绫诲瀷" width="200"></el-table-column>
+      <!-- <el-table-column prop="companyName" label="浼佷笟绫诲瀷" width="200"></el-table-column> -->
       <el-table-column prop="companyUser" label="鑱旂郴浜�" width="180"></el-table-column>
+      <el-table-column prop="companyCode" label="缁熶竴绀句細淇$敤浠g爜" width="180"></el-table-column>
       <el-table-column prop="companyPhone" label="鎵嬫満鍙风爜" width="120"></el-table-column>
       <el-table-column prop="createTime" label="鍒涘缓鏃堕棿" width="200"></el-table-column>
       <el-table-column prop="" label="鏉ユ簮" width="100">
@@ -73,19 +79,18 @@
       <el-table-column prop="companyStatus" label="鐘舵��" width="100">
         <template #default="scope">
           <!-- {{ companyStatus[scope.row.companyStatus] }} -->
-            <el-switch v-if="scope.row.companyId" v-model="scope.row.companyStatus" @change="changeCompanyNews(scope.row, $event)" :active-value="1" :inactive-value="0"></el-switch>
+            <el-switch v-if="scope.row.companyId" v-model="scope.row.companyStatus" @change="changeCompanyNews(scope.row, $event)" :active-value="0" :inactive-value="1"></el-switch>
         </template>
       </el-table-column>
-      
       <el-table-column label="鎿嶄綔" align="center" fixed="right" class-name="small-padding fixed-width" width="240">
         <template #default="scope">
-          <el-link type="primary">瀹℃牳</el-link>
-          <el-divider direction="vertical" />
-          <el-link type="primary">浜岀淮鐮�</el-link>
-          <el-divider direction="vertical" />
+          <el-link type="success" v-if="scope.row.checkStatus < 2" v-hasPermi="['sys:company:check']" @click="checkJudge(scope.row)">瀹℃牳</el-link>
+          <el-divider direction="vertical" v-hasPermi="['sys:company:check']" v-if="scope.row.checkStatus < 2"/>
+          <el-link type="info" v-if="scope.row.checkStatus == 2" @click="createQrcodeHandler(scope.row)">浜岀淮鐮�</el-link>
+          <el-divider direction="vertical"  v-if="scope.row.checkStatus == 2"/>
           <el-link type="primary" @click="handleAdd(scope.row)">缂栬緫</el-link>
           <el-divider direction="vertical" />
-          <el-link type="primary">鍒犻櫎</el-link>
+          <el-link type="error" @click="handleDelete(scope.row)">鍒犻櫎</el-link>
          </template>
       </el-table-column>
     </el-table>
@@ -101,7 +106,7 @@
           <el-input placeholder="璇疯緭鍏ヨ仈绯讳汉" v-model="form.companyUser"></el-input>
         </el-form-item>
         <el-form-item label="鎵嬫満鍙风爜" prop="companyPhone">
-          <el-input placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" v-model="form.companyPhone"></el-input>
+          <el-input  placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" v-model="form.companyPhone"></el-input>
         </el-form-item>
         <el-form-item label="缁熶竴绀句細淇$敤浠g爜" prop="companyCode">
           <el-input placeholder="璇疯緭鍏ョ粺涓�绀句細淇$敤浠g爜" v-model="form.companyCode"></el-input>
@@ -114,7 +119,7 @@
           <el-input placeholder="璇疯緭鍏ヤ紒涓氬湴鍧�"  v-model="form.companyAddress"></el-input>
         </el-form-item>
         <el-form-item label="鐘舵��">
-          <el-switch v-model="form.companyStatus" :active-value="1" :inactive-value="0"></el-switch>
+          <el-switch v-model="form.companyStatus" :active-value="0" :inactive-value="1"></el-switch>
         </el-form-item>
         <el-form-item label="澶囨敞">
           <el-input placeholder="璇疯緭鍏ュ娉�" v-model="form.remark"></el-input>
@@ -127,19 +132,24 @@
         </div>
       </template>
     </el-dialog>
-    <exportExcelCom ref="exporttem"></exportExcelCom>
-    <exportRecord ref="exportRecordCom"></exportRecord>
+    <exportExcelCom ref="exporttem" @resList="resList"></exportExcelCom>
+    <exportRecord ref="exportRecordCom" :recordRow="recordRow" @uploadList="getList"></exportRecord>
+    <judgeCom ref="judgeComRef" @upload="getList"></judgeCom>
+    <createQrcode ref="createQrcodeRef"></createQrcode>
   </div>
 </template>
 
 <script setup name="Dept">
-import FileUpload from '@/components/FileUpload/index'
+import FileUpload from '@/components/ImageUpload/index'
 import exportRecord from './components/exportRecord'
-import { listCompany,addCompany, updateCompany } from "@/api/system/company/company";
+import createQrcode from './components/createQrcode'
+import judgeCom from './components/judge'
+import { listCompany,addCompany, updStatus, delCompany, updateCompany, getCompany } from "@/api/system/company/company";
 import exportExcelCom from './components/export'
 import { computed } from "vue";
 import { judgeStatus, companyStatus, scopeList } from '@/utils/mapList/index.ts'
 import useSettingsStore from "@/store/modules/settings";
+import { download } from '@/utils/request'; // 涓嬭浇鏂囦欢
 const thcolor = computed(() => useSettingsStore().theme);
 const { proxy } = getCurrentInstance();
 const { sys_normal_disable } = proxy.useDict("sys_normal_disable");
@@ -153,6 +163,8 @@
 const refreshTable = ref(true);
 const exporttem = ref()
 const exportRecordCom = ref()
+const judgeComRef = ref()
+const createQrcodeRef = ref()
 const options = reactive({
   // -1鎷掔粷锛�0寰呭鎵癸紝1瀹℃壒涓紝2閫氳繃	
   checkOptions: [
@@ -176,11 +188,11 @@
   companyStatus: [
   {
       label: '姝e父',
-      value: 1
+      value: 0
     },
     {
       label: '绂佺敤',
-      value: 0
+      value: 1
     },
   ],
   socreList: [
@@ -223,7 +235,7 @@
 // const dispDeptType = computed(() => (e) => {
 //   return dept_type.value.find((f) => f.value == e).label;
 // });
-
+const recordRow = ref([])
 /** 鏌ヨ浼佷笟鍒楄〃 */
 function getList() {
   loading.value = true;
@@ -237,6 +249,7 @@
 function cancel() {
   open.value = false;
   reset();
+  getList();
 }
 /** 琛ㄥ崟閲嶇疆 */
 function reset() {
@@ -263,16 +276,26 @@
   queryRef.value.resetFields();
   handleQuery();
 }
+function getDetails(id) {
+  getCompany(id).then((response) => {
+    form.value = response.data;
+    open.value = true;
+    // title.value = "鏌ョ湅浼佷笟";
+  });
+}
 /** 鏂板鎸夐挳鎿嶄綔 */
 function handleAdd(row) {
   if(row) {
-    form.value = row
+    // form.value = row
     title.value = "缂栬緫浼佷笟";
+    getDetails(row.companyId)
   } else {
-    form.value = {}
+    form.value = {
+      companyStatus: 0
+    }
     title.value = "娣诲姞浼佷笟";
+    open.value = true;
   }
-  open.value = true;
 }
 
 /** 鎻愪氦鎸夐挳 */
@@ -298,9 +321,9 @@
 /** 鍒犻櫎鎸夐挳鎿嶄綔 */
 function handleDelete(row) {
   proxy.$modal
-    .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.deptName + '"鐨勬暟鎹」?')
+    .confirm('鏄惁纭鍒犻櫎璇ユ暟鎹�?')
     .then(function () {
-      return delDept(row.deptId);
+      return delCompany({delId: row.companyId});
     })
     .then(() => {
       getList();
@@ -313,7 +336,7 @@
   if(loading.value){
     return
   }
-  updateCompany(row).then(val => {
+  updStatus(row).then(val => {
     proxy.$modal.msgSuccess("淇敼鎴愬姛");
     getList();
   })
@@ -326,5 +349,44 @@
 function exportRecordComOpen() {
   exportRecordCom.value.openDialog()
 }
+function resList(row) {
+  recordRow.value = row
+  exportRecordCom.value.openDialog()
+}
+function checkJudge(row) {
+  judgeComRef.value.openDialog(row)
+}
+function createQrcodeHandler(row) {
+  createQrcodeRef.value.openDialog(row)
+}
+let valueArr = []
+function downLoadCode() {
+  download('/system/company/downloadQrcode', {
+    companyIds: valueArr.join()
+  }, "浼佷笟鍥剧墖.zip")
+}
+function handleSelectionChange(e) {
+  console.log(e)
+  valueArr = e.map(item => item.companyId)
+}
 getList();
+function selectableFun(e) {
+  console.log(e)
+}
 </script>
+
+<style scoped lang="scss">
+.evenly-distributed-labels {
+  :deep(){
+    .el-form-item__label {
+      position: relative; /* 璁剧疆鐩稿瀹氫綅浣滀负鏄熷彿鐨勫畾浣嶅熀鍑� */
+      text-align: justify;
+      text-align-last: justify; /* 纭繚鏈�鍚庝竴琛屼篃涓ょ瀵归綈 */
+      padding-left: 10px; /* 涓烘槦鍙烽鐣欑┖闂� */
+      display: inline-block;
+    }
+  }
+} 
+
+
+</style>

--
Gitblit v1.9.1