recruitmentApprove-detail.vue 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. <style scoped>
  2. .user-panel {
  3. margin: 10px auto;
  4. }
  5. .td_tit1 {
  6. font-size:26px;
  7. color: #000;
  8. height: 50px;
  9. }
  10. .td_tit2 {
  11. font-size:18px;
  12. color: #000;
  13. height: 50px;
  14. }
  15. .td_tit3 {
  16. width: 70px;
  17. height: 30px;
  18. }
  19. .td_con {
  20. min-width:100px;
  21. color: #000;
  22. height: 30px;
  23. }
  24. .divider {
  25. border-top:1px dashed #cccccc;
  26. height: 1px;
  27. overflow:hidden;
  28. }
  29. </style>
  30. <template>
  31. <el-dialog
  32. :visible.sync="showDialog"
  33. :title="title"
  34. :modal-append-to-body="false"
  35. style="text-align: left"
  36. @close="closeDialog"
  37. :close-on-click-modal="false"
  38. >
  39. <div class="user-panel" v-loading="loading">
  40. <table style="width:100%;" border="0" cellpadding="0" cellspacing="0">
  41. <tr>
  42. <td style="width:70%; padding-right:40px;">
  43. <table style="width:100%;" border="0" cellpadding="0" cellspacing="0">
  44. <tr>
  45. <td class="td_tit1" style="padding-bottom:10px">{{formModel.title}}</td>
  46. <td class="td_tit1" style="text-align:right;color:#ff0000">{{formModel.wageTypeName}}</td>
  47. </tr>
  48. <tr>
  49. <td colspan="2" class="td_tit3" style="padding-bottom:30px">
  50. <el-tag v-for="item in formModel.tagList" :key="item" size="medium" type="info" style="margin-right:10px">{{item}}</el-tag>
  51. </td>
  52. </tr>
  53. <tr>
  54. <td colspan="2" class="td_tit3">{{formModel.requirements}}</td>
  55. </tr>
  56. <tr>
  57. <td colspan="2" class="td_tit3" style="padding-bottom:10px">{{formModel.address}}</td>
  58. </tr>
  59. <tr>
  60. <td colspan="2" class="divider"></td>
  61. </tr>
  62. <tr>
  63. <td colspan="2" class="td_tit2" style="padding-top:10px">职位描述</td>
  64. </tr>
  65. <tr>
  66. <td colspan="2" class="td_con">{{formModel.positionMessage}}</td>
  67. </tr>
  68. <tr>
  69. <td v-if="formModel.updateTime != null" colspan="2" class="td_con" style="padding-top:40px">
  70. 更新:{{formModel.updateTime}}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  71. 浏览:{{formModel.readingTimes}}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  72. 收藏:{{formModel.collectionTimes}}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  73. 投递:{{formModel.deliveryTimes}}
  74. </td>
  75. <td v-else colspan="2" class="td_con" style="padding-top:40px">
  76. 更新:{{formModel.createTime}}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  77. 浏览:{{formModel.readingTimes}}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  78. 收藏:{{formModel.collectionTimes}}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  79. 投递:{{formModel.deliveryTimes}}
  80. </td>
  81. </tr>
  82. </table>
  83. </td>
  84. <td style="padding-left:20px; border-left:1px dashed #cccccc;" valign="top">
  85. <table style="width:100%;" border="0" cellpadding="0" cellspacing="0">
  86. <tr>
  87. <td colspan="2" class="td_tit2" style="padding-bottom:10px">{{formModel.companyName}}</td>
  88. </tr>
  89. <tr>
  90. <td class="td_con">{{formModel.companyIndustryN}} | {{formModel.companyScaleN}}</td>
  91. <td rowspan="2" align="right" valign="top">
  92. <!-- <el-avatar :size="56" shape="square" src='http://oss.xiaoxinda.com/enterprise/personInfo/2021/8/b16c75d5-2d5c-4236-b8ec-c7ab8ecb6f14/336.jpg?x-oss-process=image/resize,m_fill,w_64,h_64'></el-avatar> -->
  93. <el-avatar :size="56" shape="square" :src="formModel.companyLogo"></el-avatar>
  94. </td>
  95. </tr>
  96. <tr>
  97. <td class="td_con">
  98. <el-tag size="medium">企业已认证</el-tag>&nbsp;
  99. </td>
  100. </tr>
  101. <tr>
  102. <td colspan="2" class="td_con" style="padding-top:30px">{{formModel.address}}</td>
  103. </tr>
  104. </table>
  105. </td>
  106. </tr>
  107. </table>
  108. </div>
  109. <span slot="footer" class="dialog-footer">
  110. <el-button @click="closeDialog">取 消</el-button>
  111. <el-button type="primary" @click="handleSubmit" :loading="submitting">确 定</el-button>
  112. </span>
  113. </el-dialog>
  114. </template>
  115. <script>
  116. import Constant from "@/constant";
  117. import recruitmentApi from "@/api/job/recruitment";
  118. export default {
  119. props: ["businessKey", "approveKey", "title"],
  120. data() {
  121. return {
  122. formModel: {},
  123. showDialog: true,
  124. loading: false,
  125. submitting: false,
  126. };
  127. },
  128. methods: {
  129. closeDialog() {
  130. this.$emit("close", false);
  131. },
  132. handleSubmit() {
  133. var self = this;
  134. (function () {
  135. var formData = new FormData();
  136. formData.append("id", self.businessKey);
  137. formData.append("approveId", self.approveKey);
  138. return recruitmentApi.checked(formData);
  139. })().then(function (response) {
  140. var jsonData = response.data;
  141. if (jsonData.result) {
  142. self.$message({
  143. message: "保存成功!",
  144. type: "success",
  145. });
  146. self.$emit("close", true);
  147. } else {
  148. self.$message({
  149. message: jsonData.message + "",
  150. type: "warning",
  151. });
  152. self.$emit("close", false);
  153. }
  154. });
  155. },
  156. },
  157. mounted: function () {
  158. var self = this;
  159. (function () {
  160. return recruitmentApi.edit(self.businessKey);
  161. })()
  162. .then((response) => {
  163. var jsonData = response.data;
  164. self.loading = false;
  165. if (jsonData.result) {
  166. self.formModel = jsonData.data;
  167. self.formModel.companyLogo += '?x-oss-process=image/resize,m_fill,w_64,h_64';
  168. } else {
  169. self.$message.error(jsonData.message + "");
  170. }
  171. })
  172. .catch((error) => {
  173. self.$message.error(error + "");
  174. });
  175. },
  176. };
  177. </script>