PositionList.vue 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. <template>
  2. <a-card :bordered="false">
  3. <!-- 查询区域 -->
  4. <div class="table-page-search-wrapper">
  5. <a-form layout="inline">
  6. <a-row :gutter="24">
  7. <a-col :md="6" :sm="8">
  8. <a-form-item label="公司名称">
  9. <a-input placeholder="请输入公司名称" v-model="queryParam.enterpriseName"></a-input>
  10. </a-form-item>
  11. </a-col>
  12. <a-col :md="6" :sm="8">
  13. <a-form-item label="职位名称">
  14. <a-input placeholder="请输入职位名称" v-model="queryParam.positionName"></a-input>
  15. </a-form-item>
  16. </a-col>
  17. <template v-if="toggleSearchStatus">
  18. <a-col :md="6" :sm="8">
  19. <a-form-item label="全职职位类别">
  20. <j-dict-select-tag v-model="queryParam.fulltimePositionType" placeholder="请选择职位类别" dictCode="fulltime_position_type"/>
  21. </a-form-item>
  22. </a-col>
  23. <a-col :md="6" :sm="8">
  24. <a-form-item label="兼职职位类别">
  25. <j-dict-select-tag v-model="queryParam.parttimePositionType" placeholder="请选择职位类别" dictCode="parttime_position_type"/>
  26. </a-form-item>
  27. </a-col>
  28. <a-col :md="6" :sm="8">
  29. <a-form-item label="发布时间" :labelCol="{span: 10}" :wrapperCol="{span: 32, offset: 0}" >
  30. <j-date v-model="queryParam.createTime" :showTime="true" date-format="YYYY-MM-DD" placeholder="请选择发布时间" ></j-date>
  31. </a-form-item>
  32. </a-col>
  33. <a-col :md="6" :sm="8">
  34. <a-form-item label="更新时间" :labelCol="{span: 10}" :wrapperCol="{span: 16, offset: 0}">
  35. <j-date v-model="queryParam.updateTime" :showTime="true" date-format="YYYY-MM-DD" placeholder="请选择更新时间" ></j-date>
  36. </a-form-item>
  37. </a-col>
  38. <a-col :md="6" :sm="8">
  39. <a-form-item label="认证状态">
  40. <j-dict-select-tag v-model="queryParam.authenticationStatus" placeholder="请选择认证状态" dictCode="authentication_status"/>
  41. </a-form-item>
  42. </a-col>
  43. </template>
  44. <a-col :md="6" :sm="8" >
  45. <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
  46. <a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
  47. <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
  48. <a @click="handleToggleSearch" style="margin-left: 8px">
  49. {{ toggleSearchStatus ? '收起' : '展开' }}
  50. <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
  51. </a>
  52. </span>
  53. </a-col>
  54. </a-row>
  55. </a-form>
  56. </div>
  57. <!-- 操作按钮区域 -->
  58. <div class="table-operator">
  59. <a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
  60. <!--<a-button type="primary" icon="download" @click="handleExportXls('职位审核')">导出</a-button>-->
  61. <!--<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">-->
  62. <!--<a-button type="primary" icon="import">导入</a-button>-->
  63. <!--</a-upload>-->
  64. <a-dropdown v-if="selectedRowKeys.length > 0">
  65. <a-menu slot="overlay">
  66. <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>删除</a-menu-item>
  67. </a-menu>
  68. <a-button style="margin-left: 8px"> 批量操作 <a-icon type="down" /></a-button>
  69. </a-dropdown>
  70. </div>
  71. <!-- table区域-begin -->
  72. <div>
  73. <!--<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
  74. <!--<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项-->
  75. <!--<a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
  76. <!--</div>-->
  77. <a-table
  78. ref="table"
  79. size="middle"
  80. bordered
  81. rowKey="id"
  82. :columns="columns"
  83. :dataSource="dataSource"
  84. :pagination="ipagination"
  85. :loading="loading"
  86. :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
  87. @change="handleTableChange">
  88. <span slot="action" slot-scope="text, record">
  89. <a href="javascript:;" @click="handleDetail(record)">查看</a>
  90. <a-divider type="vertical" />
  91. <a href="javascript:;" @click="confirm1(record)">审核</a>
  92. <a-divider type="vertical" />
  93. <a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
  94. <a>删除</a>
  95. </a-popconfirm>
  96. </span>
  97. </a-table>
  98. </div>
  99. <!-- table区域-end -->
  100. <!-- 表单区域 -->
  101. <position-modal ref="modalForm" @ok="modalFormOk"></position-modal>
  102. </a-card>
  103. </template>
  104. <script>
  105. import PositionModal from './modules/PositionModal'
  106. import { JeecgListMixin } from '@/mixins/JeecgListMixin'
  107. import { getAction,deleteAction,putAction,postAction} from '@/api/manage'
  108. const auditHpUser = (params)=>putAction("/hpposition/position/changeAuth",params);
  109. import JDate from '@/components/jeecg/JDate'
  110. export default {
  111. name: "PositionList",
  112. mixins:[JeecgListMixin],
  113. components: {
  114. PositionModal,
  115. JDate
  116. },
  117. data () {
  118. return {
  119. description: '职位审核管理页面',
  120. // 表头
  121. columns: [
  122. {
  123. title: '#',
  124. dataIndex: '',
  125. key:'rowIndex',
  126. width:60,
  127. align:"center",
  128. customRender:function (t,r,index) {
  129. return parseInt(index)+1;
  130. }
  131. },
  132. {
  133. title: '公司名称',
  134. align:"center",
  135. dataIndex: 'enterpriseName'
  136. },
  137. {
  138. title: '职位名称',
  139. align:"center",
  140. dataIndex: 'positionName'
  141. },
  142. {
  143. title: '职位类型',
  144. align:"center",
  145. dataIndex: 'positionCategory_dictText'
  146. },
  147. {
  148. title: '职位类别',
  149. align:"center",
  150. dataIndex: 'fulltimePositionType_dictText'
  151. },
  152. {
  153. title: '发布时间',
  154. align:"center",
  155. dataIndex: 'createTime'
  156. },
  157. {
  158. title: '更新时间',
  159. align:"center",
  160. dataIndex: 'updateTime'
  161. },
  162. {
  163. title: '认证状态',
  164. align:"center",
  165. dataIndex: 'authenticationStatus_dictText'
  166. },
  167. {
  168. title: '操作',
  169. dataIndex: 'action',
  170. align:"center",
  171. scopedSlots: { customRender: 'action' },
  172. }
  173. ],
  174. url: {
  175. list: "/hpposition/position/list1",
  176. delete: "/hpposition/position/delete",
  177. deleteBatch: "/hpposition/position/deleteBatch",
  178. exportXlsUrl: "hpposition/position/exportXls",
  179. importExcelUrl: "hpposition/position/importExcel",
  180. },
  181. }
  182. },
  183. computed: {
  184. importExcelUrl: function(){
  185. return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`;
  186. }
  187. },
  188. methods: {
  189. //审核确认
  190. confirm1(record){
  191. let that = this;
  192. that.$confirm({
  193. title: "审核",
  194. content:record.enterpriseName,
  195. okText:"通过",
  196. cancelText:"不通过",
  197. onOk: function () {
  198. auditHpUser({ id: record.id,authenticationStatus:3 }).then((res) => {
  199. if (res.success) {
  200. that.$message.success(res.message)
  201. that.loadData();
  202. } else {
  203. that.$message.warning(res.message)
  204. }
  205. })
  206. },
  207. onCancel() {
  208. auditHpUser({ id: record.id,authenticationStatus:2 }).then((res) => {
  209. if (res.success) {
  210. that.$message.success(res.message)
  211. that.loadData();
  212. } else {
  213. that.$message.warning(res.message)
  214. }
  215. })
  216. },
  217. })
  218. }
  219. }
  220. }
  221. </script>
  222. <style scoped>
  223. @import '~@assets/less/common.less'
  224. </style>