123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283 |
- <template>
- <view class="jz-content-box">
- <view class="form-label-radio form-top-margin flex-start-row">
- <view class="phone-form-label"> <text class="form-label-require">*</text>类型</view>
- <dataChecked :list="typeList" mode="multiple" :defaultCount="9" :selectedNames="leixing"
- @change="selectChangeType" @add="addType" />
- </view>
- <view class="form-label-select">
- <view class="phone-form-label"><text class="form-label-require"></text>经验</view>
- <picker :range="jingyanList" mode='selector' :value="jingyanIndex" range-key="name" @change="jingyanChange"
- @cancel="jingyanCancel" class="select-picker-box">
- <view class="form-radio-select">
- <view>{{ jingyan }}</view>
- <icon></icon>
- </view>
- </picker>
- </view>
- <view class="form-label-radio flex-start-row">
- <view class="phone-form-label"><text class="form-label-require">*</text>技能</view>
- <dataChecked :list="skillList" mode="multiple" :defaultCount="9" :selectedNames="jineng"
- @change="selectChangeSkill" @add="addSkill" />
- </view>
- <view class="form-label-radio form-top-margin flex-start-row">
- <view class="phone-form-label"><text class="form-label-require">*</text>状态</view>
- <dataChecked :list="zhuangtaiList" mode="single" :selectedIds='zhuangtai' :showAdd="false"
- @change="selectChangeZhuangtai" />
- </view>
- <view class="form-label-select">
- <view class="phone-form-label"><text class="form-label-require"></text>薪资级别</view>
- <picker :range="xinziJibieList" mode='selector' @change="xinziJibieChange" @cancel="xinziJibieCancel"
- class="select-picker-box">
- <view class="form-radio-select">
- <view>{{jibiexinzi}}</view>
- <icon></icon>
- </view>
- </picker>
- </view>
- <view class="form-label-input">
- <view class="phone-form-label"><text class="form-label-require"></text>期望薪资</view>
- <input v-model="qiwangxinzi" placeholder="请输入期望薪资" />
- </view>
- <view class="form-label-input flex-start-row">
- <view class="phone-form-label"><text class="form-label-require"></text>工作经历</view>
- <textarea v-model="jingli" maxlength="-1" placeholder="请填写工作经历" class="form-textarea-box" />
- </view>
- <view class="page-btn-box">
- <button type="default" v-if="status =='add'" @click="goNext" class="phone-green-btn">下一步</button>
- <button type="default" v-if="status =='edit'" @click="editSave" class="phone-green-btn">保存</button>
- </view>
- </view>
- </template>
- <script>
- import dataChecked from './common/dataChecked.vue';
- import {
- getJiazhengLeixing,
- getJiazhengJineng,
- getJiazhengZhuangtai,
- } from "@/api/jiazheng.js";
- export default {
- components: {
- dataChecked
- },
- // onLoad 是 uni-app 的页面生命周期钩子,不需要导入
- created() {
- this.initRequests()
- },
- props: {
- status: {
- type: String,
- }
- },
- data() {
- return {
- formData: {},
- // 从后端获取的技能列表
- skillList: [],
- typeList: [],
- leixing: "",
- jineng: "",
- zhuangtaiList: [],
- zhuangtai: '',
- jingyan: "",
- jingyanIndex: 0,
- qiwangxinzi: '面议',
- jingli: '',
- xinziJibieList: ["一级", "二级", "三级", "四级", "五级", ],
- jibiexinzi: "",
- jingyanList: Array.from({
- length: 51
- }, (_, i) => i + '年'),
- };
- },
- methods: {
- async initRequests() {
- await Promise.all([
- this.getLeixing(),
- this.getJineng(),
- this.getZhuangtai()
- ]);
- },
- editinfo(data) {
- this.$nextTick(() => {
- console.log('data11111', data);
- this.leixing = data.leixing
- this.jingyan = data.jingyan
- this.jineng = data.jineng
- this.zhuangtai = data.zhuangtai
- this.jibiexinzi = data.jibiexinzi
- this.qiwangxinzi = data.qiwangxinzi
- this.jingli = data.jingli
- })
- },
- // 点击完成按钮的时候触发,
- xinziJibieChange(e) {
- //通过e.detail.value获取值,获取的是自定义数据的下标
- const index = e.detail.value
- this.jibiexinzi = this.xinziJibieList[index]
- console.log('jibiexinzi', this.jibiexinzi);
- },
- xinziJibieCancel(e) {
- console.log("您已取消选择");
- },
- jingyanChange(e) {
- const index = e.detail.value
- this.jingyan = this.jingyanList[index]
- },
- jingyanCancel() {
- this.jingyanIndex = 0
- },
- getJineng() {
- getJiazhengJineng({}).then(res => {
- this.skillList = this.dataConversionObject(res.data)
- }).catch(error => {
- console.error('获取技能类型失败:', error);
- });
- },
- getLeixing() {
- getJiazhengLeixing({}).then(res => {
- this.typeList = this.dataConversionObject(res.data)
- }).catch(error => {
- console.error('获取技能类型失败:', error);
- });
- },
- getZhuangtai() {
- getJiazhengZhuangtai({}).then(res => {
- console.log('res', res);
- this.zhuangtaiList = res.data
- // this.typeList = this.dataConversionObject(res.data)
- // console.log('this.typeList', this.typeList);
- }).catch(error => {
- console.error('获取技能类型失败:', error);
- });
- },
- dataConversionObject(data) {
- let newList
- newList = data.map((name, index) => ({
- id: index,
- name: name
- }));
- return newList
- },
- dataConversionArray(data) {
- let newList
- newList = data.map((item, index) => {
- return item.name
- });
- return newList
- },
- selectChangeType(data) {
- // console.log('typeData', data);
- this.leixing = this.dataConversionArray(data).join(',')
- console.log('this.leixing', this.leixing);
- },
- addType(newType) {
- this.typeList.push({
- ...newType,
- });
- },
- selectChangeSkill(data) {
- this.jineng = this.dataConversionArray(data).join(',')
- console.log('this.jineng', this.jineng);
- },
- addSkill(newSkill) {
- this.skillList.push({
- ...newSkill,
- });
- },
- selectChangeZhuangtai(data) {
- console.log('zhuangtaiData', data);
- if (data.length > 0) {
- this.zhuangtai = data[0].id
- }else{
- this.zhuangtai = ''
- }
- console.log('zhuangtai', this.zhuangtai);
- // const index = e.detail.value
- // this.jingyan = this.jingyanList[index]
- },
- showAlert() {
- uni.showToast({
- title: "请勾选本人同意!",
- icon: 'none',
- duration: 2000
- })
- return false
- },
- yanzheng() {
- this.formData = {
- leixing: this.leixing,
- jingyan: this.jingyan,
- jineng: this.jineng,
- zhuangtai: this.zhuangtai,
- jibiexinzi: this.jibiexinzi,
- qiwangxinzi: this.qiwangxinzi,
- jingli: this.jingli,
- }
- if (!this.formData.leixing) {
- uni.showToast({
- title: "请选择类型!",
- icon: 'none',
- duration: 2000
- })
- return false
- }
- // if (!this.formData.jingyan) {
- // uni.showToast({
- // title: "请选择经验年限!",
- // icon: 'none',
- // duration: 2000
- // })
- // return false
- // }
- if (!this.formData.jineng) {
- uni.showToast({
- title: "请选择相应技能!",
- icon: 'none',
- duration: 2000
- })
- return false
- }
- if (!this.formData.zhuangtai) {
- uni.showToast({
- title: "请选择相应状态!",
- icon: 'none',
- duration: 2000
- })
- return false
- }
- return true
- },
- goNext() {
- let ispass = this.yanzheng()
- if (ispass) {
- this.$emit('goNext', this.formData, 1);
- }
- },
- editSave() {
- let ispass = this.yanzheng()
- console.log('this.formData', this.formData);
- if (ispass) {
- this.$emit('editSave', this.formData);
- }
- }
- },
- mounted() {
- console.log('zxvasdfasdfasdfadsfadsfadsfasd');
- // setTimeout(()=>{
- // this.zhuangtai = '1'
- // },1000)
- }
- };
- </script>
|