jz.kai 4 år sedan
förälder
incheckning
3cd59e6f3d
2 ändrade filer med 64 tillägg och 64 borttagningar
  1. 7 21
      src/views/job/recruitment-detail.vue
  2. 57 43
      src/views/job/resume-list.vue

+ 7 - 21
src/views/job/recruitment-detail.vue

@@ -121,15 +121,12 @@
             </el-col>
         </el-row>
         <el-row>
-            <el-col :span="4">
-                <el-form-item label="薪资" prop="isDiscussPersonally">
-                  <el-checkbox v-model="formModel.isDiscussPersonally">面议</el-checkbox>
-                </el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-select :disabled="showWageType" v-model="formModel.wageType" filterable placeholder="请选择薪资" style="width:225px;padding-left:22px;">
-                <el-option v-for="wageType in wageTypeResult" :key="wageType.value" :label="wageType.name" :value="wageType.id"></el-option>
-              </el-select>
+            <el-col :span="12">
+              <el-form-item label="薪资" prop="wageType">
+                <el-select v-model="formModel.wageType" filterable placeholder="请选择薪资" style="width:300px">
+                  <el-option v-for="wageType in wageTypeResult" :key="wageType.value" :label="wageType.name" :value="wageType.id"></el-option>
+                </el-select>
+              </el-form-item>
             </el-col>
             <el-col :span="12">
               <el-form-item label="地址" prop="address">
@@ -188,6 +185,7 @@ export default {
     return {
       formModel: {},
       ruleValidate: {
+        wageType: [{ required: true, message: "薪资不能为空", trigger: "blur" }],
         workCategoryId: [{ required: true, message: "岗位分类不能为空", trigger: "blur" }],
         companyId: [{ required: true, message: "企业不能为空", trigger: "blur" }],
         title: [{ required: true, message: "岗位不能为空", trigger: "blur" }],
@@ -199,7 +197,6 @@ export default {
         workYear: [{ required: true, message: "工作年限不能为空", trigger: "blur" }],
         education: [{ required: true, message: "学历要求不能为空", trigger: "blur" }],
         positionSex: [{ required: true, message: "性别要求不能为空", trigger: "blur" }],
-        isDiscussPersonally: [{ required: true, message: "是否面议不能为空", trigger: "blur" }],
         contactPerson: [{ required: true, message: "联系人不能为空", trigger: "blur" }],
         tel: [{ required: true, message: "联系方式不能为空", trigger: "blur" }],
         status: [{ required: true, message: "状态(关闭,开启等)不能为空", trigger: "blur" }],
@@ -226,7 +223,6 @@ export default {
         value: "id",
         label: "name"
       },
-      showWageType: false,
     };
   },
   created() {
@@ -366,15 +362,5 @@ export default {
   components: {
     "el-select-tree": SelectTree
   },
-  watch: {
-    "formModel.isDiscussPersonally": function (newVal, oldVal) {
-      if (newVal) {
-        this.showWageType = true;
-      }
-      else{
-        this.showWageType = false;
-      }
-    },
-  },
 };
 </script>

+ 57 - 43
src/views/job/resume-list.vue

@@ -15,16 +15,20 @@
     -->
     <el-form ref="queryForm" :model="queryModel" inline class="demo-form-inline">
       <el-form-item label="求职岗位" prop="positionCategoryId">
-        <el-input type="text" size="mini" v-model="queryModel.positionCategoryId"></el-input>
+        <el-select-tree :props="positionCategoryProps" :options="positionCategoryResult" v-model="queryModel.positionCategoryId" size="mini"></el-select-tree>
       </el-form-item>
-      <el-form-item label="实名制状态" prop="approveStatus"><!-- 用户表里面的 -->
-        <el-input type="text" size="mini" v-model="queryModel.approveStatus"></el-input>
+      <el-form-item label="实名制状态" prop="approveStatus">
+        <el-select v-model="queryModel.approveStatus" filterable placeholder="请选择实名制状态" size="mini">
+          <el-option v-for="approveStatus in approveStatusResult" :key="approveStatus.value" :label="approveStatus.name" :value="approveStatus.id"></el-option>
+        </el-select>
       </el-form-item>
       <el-form-item label="是否上架" prop="status">
-        <el-input type="text" size="mini" v-model="queryModel.status"></el-input>
+        <el-select v-model="queryModel.status" filterable placeholder="请选择是否上架" size="mini">
+          <el-option v-for="status in statusResult" :key="status.value" :label="status.name" :value="status.id"></el-option>
+        </el-select>
       </el-form-item>
-      <el-form-item label="姓名" prop="jobStatus">
-        <el-input type="text" size="mini" v-model="queryModel.jobStatus"></el-input>
+      <el-form-item label="姓名" prop="name">
+        <el-input type="text" size="mini" v-model="queryModel.name"></el-input>
       </el-form-item>
       <el-form-item>
         <el-button type="primary" size="mini" icon="ios-search" @click="changePage(1)" :loading="loading">查询</el-button>&nbsp;
@@ -48,7 +52,7 @@
       <el-table-column prop="userName" label="姓名" width="100"></el-table-column>
       <el-table-column prop="positionCategoryName" label="应聘职位" width="100"></el-table-column>
       <el-table-column prop="sexName" label="性别" width="100"></el-table-column>
-      <el-table-column prop="dreamMoneyName" label="期望工资" width="100"></el-table-column>
+      <el-table-column prop="dreamMoneyName" label="期望工资" width="140"></el-table-column>
       <el-table-column prop="workExpName" label="工作经验" width="100"></el-table-column>
       <el-table-column prop="educationName" label="学历" width="100"></el-table-column>
       <el-table-column prop="birthday" label="出生年月" width="100"></el-table-column>
@@ -59,8 +63,8 @@
       <el-table-column label="操作">
         <template slot-scope="{row}">
           <el-button size="mini" type="text" @click="handleEdit(row)">简历详情</el-button>
-          <el-button v-if="row.status == '0'" size="mini" type="text" @click="handleChangeStatus(row)">上架</el-button>
-          <el-button v-if="row.status == '1'" size="mini" type="text" @click="handleChangeStatus(row)">下架</el-button>
+          <el-button v-if="row.status == '7a308001-f476-411a-8802-28992be86cb1'" size="mini" type="text" @click="handleChangeStatus(row)">上架</el-button>
+          <el-button v-if="row.status == '89ad69d3-b9e5-4ea3-90bf-04a57fc3c48c'" size="mini" type="text" @click="handleChangeStatus(row)">下架</el-button>
           <el-button size="mini" type="text" @click="handleDelete(row)">删除</el-button>
         </template>
       </el-table-column>
@@ -85,6 +89,9 @@
 import Constant from "@/constant";
 import ResumeDetail from "./resume-detail";
 import resumeApi from "@/api/job/resume";
+import dataDictionaryApi from "@/api/sys/dataDictionary";
+import workCategoryApi from "@/api/job/workCategory";
+import SelectTree from "@/components/SelectTree";
 import NProgress from "nprogress"; // progress bar
 import "nprogress/nprogress.css"; // progress bar style
 
@@ -94,25 +101,10 @@ export default {
 
     return {
       queryModel: {
-        id: "",
-        createBy: "",
-        createTime: "",
-        updateBy: "",
-        updateTime: "",
-        delFlag: "",
-        jobUserId: "",
-        sex: "",
         positionCategoryId: "",
-        workExp: "",
-        education: "",
-        dreamMoney: "",
-        dreamAdd: "",
-        birthday: "",
-        introduction: "",
-        status: "",
         approveStatus: "",
-        jobStatus: "",
-        resumeUrls: "",
+        status: "",
+        name: "",
       },
       loading: false,
       tableData: [],
@@ -127,8 +119,44 @@ export default {
       showModal: false,
       modalTitle: "",
       businessKey: "",
+      positionCategoryResult: [],
+      positionCategoryProps: {
+        value: "id",
+        label: "name"
+      },
+      approveStatusResult: [],
     };
   },
+  created() {
+    dataDictionaryApi
+    .findByCatalogName({
+      catalogName: "简历状态",
+    })
+    .then((response) => {
+      var jsonData = response.data;
+      this.statusResult = jsonData.data;
+    });
+
+    dataDictionaryApi
+    .findByCatalogName({
+      catalogName: "实名制状态",
+    })
+    .then((response) => {
+      var jsonData = response.data;
+      this.approveStatusResult = jsonData.data;
+    });
+
+    workCategoryApi.listSelectTree().then(response=>{
+      var jsonData = response.data;
+
+      if(jsonData.result){
+        this.positionCategoryResult = jsonData.data;
+      }
+      else{
+        this.$message.error(jsonData.message + "");
+      }
+    });
+  },
   methods: {
     changePage(pageIndex) {
       var self = this;
@@ -141,25 +169,10 @@ export default {
       formData.append("pageIndex", self.pageIndex);
       formData.append("pageSize", self.pageSize);
 
-      formData.append("id", self.queryModel.id);
-      formData.append("createBy", self.queryModel.createBy);
-      formData.append("createTime", self.queryModel.createTime);
-      formData.append("updateBy", self.queryModel.updateBy);
-      formData.append("updateTime", self.queryModel.updateTime);
-      formData.append("delFlag", self.queryModel.delFlag);
-      formData.append("jobUserId", self.queryModel.jobUserId);
-      formData.append("sex", self.queryModel.sex);
       formData.append("positionCategoryId", self.queryModel.positionCategoryId);
-      formData.append("workExp", self.queryModel.workExp);
-      formData.append("education", self.queryModel.education);
-      formData.append("dreamMoney", self.queryModel.dreamMoney);
-      formData.append("dreamAdd", self.queryModel.dreamAdd);
-      formData.append("birthday", self.queryModel.birthday);
-      formData.append("introduction", self.queryModel.introduction);
-      formData.append("status", self.queryModel.status);
       formData.append("approveStatus", self.queryModel.approveStatus);
+      formData.append("status", self.queryModel.status);
       formData.append("jobStatus", self.queryModel.jobStatus);
-      formData.append("resumeUrls", self.queryModel.resumeUrls);
 
       if (this.field != null) {
         formData.append("field", this.field);
@@ -218,7 +231,7 @@ export default {
       var self = this;
 
       var msg = "";
-      if(record.status == '0'){
+      if(record.status == '7a308001-f476-411a-8802-28992be86cb1'){
         msg = "是否确认上架?";
       }
       else{
@@ -307,6 +320,7 @@ export default {
   },
   components: {
     "resume-detail": ResumeDetail,
+    "el-select-tree": SelectTree
   },
 };
 </script>