qiuzhiXinxi.vue 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209
  1. <template>
  2. <view class="jz-content-box">
  3. <view class="form-label-radio form-top-margin flex-start-row">
  4. <view class="phone-form-label"> <text class="form-label-require">*</text>类型</view>
  5. <dataChecked :list="typeList" mode="multiple" :defaultCount="9" @change="selectChangeType" @add="addType" />
  6. </view>
  7. <view class="form-label-select">
  8. <view class="phone-form-label"><text class="form-label-require">*</text>经验</view>
  9. <picker :range="jingyanList" mode='selector' :value="jingyanIndex" range-key="name"
  10. @change="jingyanChange" @cancel="jingyanCancel">
  11. <view class="form-radio-select">
  12. <view>{{ jingyan }}</view>
  13. <icon></icon>
  14. </view>
  15. </picker>
  16. </view>
  17. <view class="form-label-radio flex-start-row">
  18. <view class="phone-form-label"><text class="form-label-require">*</text>技能</view>
  19. <dataChecked :list="skillList" mode="multiple" :defaultCount="9" @change="selectChangeSkill"
  20. @add="addSkill" />
  21. </view>
  22. <view class="form-label-radio form-top-margin flex-start-row">
  23. <view class="phone-form-label"><text class="form-label-require">*</text>状态</view>
  24. <dataChecked :list="zhuangtaiList" mode="single" :showAdd="false" @change="selectChangeZhuangtai" />
  25. </view>
  26. <view class="form-label-select">
  27. <view class="phone-form-label"><text class="form-label-require"></text>薪资级别</view>
  28. <picker :range="xinziJibieList" mode='selector' @change="xinziJibieChange" @cancel="xinziJibieCancel">
  29. <view class="form-radio-select">
  30. <view>{{jibiexinzi}}</view><icon></icon>
  31. </view>
  32. </picker>
  33. </view>
  34. <view class="form-label-input">
  35. <view class="phone-form-label"><text class="form-label-require"></text>期望薪资</view>
  36. <input v-model="qiwangxinzi" placeholder="请输入期望薪资" />
  37. </view>
  38. <view class="form-label-input">
  39. <view class="phone-form-label"><text class="form-label-require"></text>工作经历</view>
  40. <input v-model="jingli" placeholder="请填写工作经历" />
  41. </view>
  42. <view class="page-btn-box">
  43. <button type="default" @click="goUp" class="phone-white-btn">上一步</button>
  44. <button type="default" @click="goNext" class="phone-green-btn">下一步</button>
  45. </view>
  46. </view>
  47. </template>
  48. <script>
  49. import dataChecked from './common/dataChecked.vue';
  50. import {
  51. getJiazhengLeixing,
  52. getJiazhengJineng,
  53. getJiazhengZhuangtai,
  54. } from "@/api/jiazheng.js";
  55. export default {
  56. components: {
  57. dataChecked
  58. },
  59. // onLoad 是 uni-app 的页面生命周期钩子,不需要导入
  60. created() {
  61. this.getLeixing()
  62. this.getJineng()
  63. this.getZhuangtai()
  64. },
  65. data() {
  66. return {
  67. formData:{},
  68. // 从后端获取的技能列表
  69. skillList: [],
  70. typeList: [],
  71. leixing:"",
  72. jineng:"",
  73. zhuangtaiList: [],
  74. zhuangtai:'',
  75. jingyan:"",
  76. jingyanIndex:0,
  77. qiwangxinzi: '面议',
  78. jingli: '',
  79. xinziJibieList: ["一级", "二级","三级","四级","五级",],
  80. jibiexinzi:"",
  81. jingyanList: Array.from({length: 51}, (_, i) => i + '年'),
  82. };
  83. },
  84. methods: {
  85. // 点击完成按钮的时候触发,
  86. xinziJibieChange(e) {
  87. //通过e.detail.value获取值,获取的是自定义数据的下标
  88. const index = e.detail.value
  89. this.jibiexinzi = this.xinziJibieList[index]
  90. console.log('jibiexinzi',this.jibiexinzi);
  91. },
  92. xinziJibieCancel(e) {
  93. console.log("您已取消选择");
  94. },
  95. jingyanChange(e){
  96. const index = e.detail.value
  97. this.jingyan = this.jingyanList[index]
  98. },
  99. jingyanCancel(){
  100. this.jingyanIndex = 0
  101. },
  102. getLeixing() {
  103. getJiazhengLeixing({}).then(res => {
  104. this.skillList = this.dataConversionObject(res.data)
  105. console.log('this.skillList', this.skillList);
  106. }).catch(error => {
  107. console.error('获取技能类型失败:', error);
  108. });
  109. },
  110. getJineng() {
  111. getJiazhengJineng({}).then(res => {
  112. this.typeList = this.dataConversionObject(res.data)
  113. console.log('this.typeList', this.typeList);
  114. }).catch(error => {
  115. console.error('获取技能类型失败:', error);
  116. });
  117. },
  118. getZhuangtai() {
  119. getJiazhengZhuangtai({}).then(res => {
  120. console.log('res', res);
  121. this.zhuangtaiList = res.data
  122. // this.typeList = this.dataConversionObject(res.data)
  123. // console.log('this.typeList', this.typeList);
  124. }).catch(error => {
  125. console.error('获取技能类型失败:', error);
  126. });
  127. },
  128. dataConversionObject(data) {
  129. let newList
  130. newList = data.map((name, index) => ({
  131. id: index,
  132. name: name
  133. }));
  134. return newList
  135. },
  136. dataConversionArray(data) {
  137. let newList
  138. newList = data.map((item, index) => {
  139. return item.name
  140. });
  141. return newList
  142. },
  143. selectChangeType(data) {
  144. // console.log('typeData', data);
  145. this.leixing =this.dataConversionArray(data).join(',')
  146. console.log('this.leixing',this.leixing);
  147. },
  148. addType(newType) {
  149. this.typeList.push({
  150. ...newType,
  151. });
  152. },
  153. selectChangeSkill(data) {
  154. this.jineng =this.dataConversionArray(data).join(',')
  155. console.log('this.jineng',this.jineng);
  156. },
  157. addSkill(newSkill) {
  158. this.skillList.push({
  159. ...newSkill,
  160. });
  161. },
  162. selectChangeZhuangtai(data) {
  163. console.log('zhuangtaiData', data);
  164. this.zhuangtai =data[0].id
  165. console.log('zhuangtai', this.zhuangtai);
  166. // const index = e.detail.value
  167. // this.jingyan = this.jingyanList[index]
  168. },
  169. goNext() {
  170. this.formData = {
  171. leixing:this.leixing,
  172. jingyan:this.jingyan,
  173. jineng:this.jineng,
  174. zhuangtai:this.zhuangtai,
  175. jibiexinzi:this.jibiexinzi,
  176. qiwangxinzi:this.qiwangxinzi,
  177. jingli:this.jingli,
  178. }
  179. console.log('this.formData',this.formData);
  180. // if(!this.formData.agree){
  181. // uni.showToast({
  182. // title: "请勾选本人同意!",
  183. // icon: 'none',
  184. // duration: 2000
  185. // })
  186. // return false
  187. // }
  188. this.$emit('goNext',{},1);
  189. },
  190. goUp() {
  191. // if(!this.formData.agree){
  192. // uni.showToast({
  193. // title: "请勾选本人同意!",
  194. // icon: 'none',
  195. // duration: 2000
  196. // })
  197. // return false
  198. // }
  199. this.$emit('goUp',{},1);
  200. },
  201. }
  202. };
  203. </script>