徐桐章 преди 4 години
родител
ревизия
1f68261e70
променени са 1 файла, в които са добавени 86 реда и са изтрити 3 реда
  1. 86 3
      src/views/candidateManage/candidateList.vue

+ 86 - 3
src/views/candidateManage/candidateList.vue

@@ -4,7 +4,7 @@
  * @Autor: XuTongZhang
  * @Date: 2020-07-28 15:25:06
  * @LastEditors: XuTongZhang
- * @LastEditTime: 2020-08-05 20:30:04
+ * @LastEditTime: 2020-08-06 09:58:16
 -->
 <template>
   <div class="indexPage">
@@ -15,6 +15,7 @@
       @del="delAll"
       @search="search"
       @through="throughAll"
+      @notice="noticeAll"
       @eliminate="eliminateAll"
     ></v-input>
     <el-radio-group v-model="isCollapse" style="margin-bottom: 20px;">
@@ -32,11 +33,48 @@
       @details="details"
       @eliminate="eliminate"
       @through="through"
+      @notice="notice"
       @del="del"
       @selection-change="selection"
       id="id"
     ></v-table>
     <v-pager @page="callPage" :total="totalrecords"></v-pager>
+    <el-dialog
+      :visible.sync="dialogFormVisible"
+      width="600px"
+      :before-close="close"
+      :show-close="false"
+      >
+      <el-form :model="form" ref="form" label-width="140px" :rules="rules" label-position="left">
+        <el-form-item label-width="0">
+          <div class="title">通知群发列表</div>
+          <div class="content">
+            <el-tag
+              v-for="(item, index) in copyPickList"
+              :key="item"
+              closable
+              @close="copyPickList.splice(index, 1)"
+              type="success"
+            >{{tableList.some(i => i.id === item) ? tableList.find(i => i.id === item).delivererName : ''}}</el-tag>
+          </div>
+        </el-form-item>
+        <el-form-item label="选择群发模板" prop="templateId">
+          <el-select v-model="form.templateId" placeholder="请选择群发模板">
+            <el-option
+              v-for="item in downList"
+              :key="item.id"
+              :label="item.templateName"
+              :value="item.id"
+            ></el-option>
+          </el-select>
+          <!-- <div v-else>{{this.downList1.some(i => i.id === form.processId) ? this.downList1.find(i => i.id === form.processId).processName : ''}}</div> -->
+        </el-form-item>
+        <el-form-item label="群发邮箱">139820930@qq.com</el-form-item>
+        <el-form-item>
+          <el-button type="primary" @click="launch">立即发出</el-button>
+        </el-form-item>
+      </el-form>
+    </el-dialog>
     <resume :dialogFormVisible="dialogVisible" :close="closeDia" :info="info" :searchForm="searchForm" :queryData="queryData"></resume>
   </div>
 </template>
@@ -53,6 +91,7 @@ export default {
       isCollapse: 0,
       totalrecords: 0,
       pickList: [],
+      copyPickList: [],
       downList: [],
       searchForm: {},
       form: {},
@@ -126,7 +165,7 @@ export default {
         {
           name: '通知成功',
           type: 'success',
-          method: ''
+          method: 'notice'
         }
       ],
       btn2: [
@@ -340,6 +379,39 @@ export default {
       this.openDia()
       this.info = row
     },
+    launch () {
+      let a
+      this.$refs['form'].validate((valid) => {
+        a = valid
+      })
+      if (!a) return
+      this.copyPickList.length
+        ? this.$api
+          .post('/resumeInfo/sendInviteMail', {
+            reqdata: {
+              ids: this.copyPickList,
+              templateId: this.form.templateId
+            }
+          })
+          .then((res) => {
+            this.$message({
+              message: '通知成功',
+              type: 'success'
+            })
+            this.close()
+            this.queryData(this.searchForm)
+          })
+        : this.$message({ type: 'info', message: '请添加需要通知的对象' })
+    },
+    notice (row) {
+      this.open()
+      this.copyPickList = [row.id]
+    },
+    noticeAll () {
+      this.pickList.length
+        ? this.open()
+        : this.$message({ type: 'info', message: '请选择需要通知的对象' })
+    },
     through (row, type = false) {
       let ids = type ? row : [row.id]
       let resumeInfoStatusList = ids.map(item => ({ id: item, interviewResult: 1 }))
@@ -414,6 +486,14 @@ export default {
     selection (val) {
       this.$set(this.$data, 'pickList', val)
     },
+    open () {
+      this.dialogFormVisible = true
+    },
+    close () {
+      this.dialogFormVisible = false
+      this.form = {}
+      this.copyPickList = Array.from(this.pickList)
+    },
     closeDia () {
       this.dialogVisible = false
     },
@@ -437,7 +517,7 @@ export default {
           },
           {
             title: '通知成功',
-            method: '',
+            method: 'notice',
             type: 'success'
           }
         ])
@@ -460,6 +540,9 @@ export default {
             }
           ]
         )
+    },
+    pickList () {
+      this.copyPickList = Array.from(this.pickList)
     }
   }
 }