|
@@ -1,6 +1,6 @@
|
|
|
<template>
|
|
|
<view>
|
|
|
- <cu-custom :backUrl="'/pages/human/practice/register/RegistrationAddForm'" :isBack="true" bgColor="bg-gradual-blue" >
|
|
|
+ <cu-custom :backUrl="'/pages/human/practice/register/RegistrationAddForm'" :isBack="false" bgColor="bg-gradual-blue" >
|
|
|
<block slot="content">实习登记</block>
|
|
|
</cu-custom>
|
|
|
<u--form :model="inputForm" labelWidth="100px" class="u-form" labelPosition="left" :rules="rules" ref="inputForm">
|
|
@@ -59,7 +59,7 @@
|
|
|
<u-form-item label="QQ号/微信号" borderBottom prop="qqNum" >
|
|
|
<u--input placeholder='请填写QQ号/微信号' v-model="inputForm.qqNum" :maxlength="20"></u--input>
|
|
|
</u-form-item>
|
|
|
- <u-form-item label="实习开始时间" borderBottom prop="practiceStartDay" >
|
|
|
+ <u-form-item label="实习开始时间" borderBottom prop="practiceStartDay" :required="true">
|
|
|
<el-date-picker
|
|
|
v-model="inputForm.practiceStartDay"
|
|
|
type="date"
|
|
@@ -70,7 +70,7 @@
|
|
|
clearable>
|
|
|
</el-date-picker>
|
|
|
</u-form-item>
|
|
|
- <u-form-item label="实习结束时间" borderBottom prop="practiceCompleteDay" >
|
|
|
+ <u-form-item label="实习结束时间" borderBottom prop="practiceCompleteDay" :required="true">
|
|
|
<el-date-picker
|
|
|
v-model="inputForm.practiceCompleteDay"
|
|
|
type="date"
|
|
@@ -86,12 +86,12 @@
|
|
|
</u-form-item>
|
|
|
|
|
|
<!-- 添加按钮 -->
|
|
|
- <u-form-item label="实习经验">
|
|
|
+ <!-- <u-form-item label="实习经验">
|
|
|
<el-button type="primary" @click="addRow">新增</el-button>
|
|
|
- </u-form-item>
|
|
|
+ </u-form-item> -->
|
|
|
|
|
|
<!-- 表格 -->
|
|
|
- <el-table :data="inputForm.experiences" style="width: 100%">
|
|
|
+ <!-- <el-table :data="inputForm.experiences" style="width: 100%">
|
|
|
<el-table-column label="开始时间">
|
|
|
<template slot-scope="scope">
|
|
|
<el-date-picker
|
|
@@ -127,21 +127,88 @@
|
|
|
<template slot-scope="scope">
|
|
|
<el-input placeholder="请填写岗位" v-model="scope.row.post"/>
|
|
|
</template>
|
|
|
- </el-table-column>
|
|
|
+ </el-table-column> -->
|
|
|
<!-- 添加其他表格列 -->
|
|
|
- <el-table-column label="操作">
|
|
|
+ <!-- <el-table-column label="操作">
|
|
|
<template slot-scope="scope">
|
|
|
<el-button @click="removeRow(scope.$index)" type="danger" icon="el-icon-delete">删除</el-button>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- </el-table>
|
|
|
+ </el-table> -->
|
|
|
+
|
|
|
+
|
|
|
+ <el-row :gutter="15" :key="index_experience" v-for="(item,index_experience) in this.inputForm.experiences">
|
|
|
+ <el-col :span="24">
|
|
|
+ <el-form-item label="" >
|
|
|
+ <el-divider content-position="left"> 实习经验 {{index_experience + 1}}</el-divider>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+
|
|
|
+ <el-col :span="24">
|
|
|
+ <u-form-item label="开始时间" :prop="'experiences[' + index_experience + '].startTime'" :required="true"
|
|
|
+ :rules="[
|
|
|
+ ]">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="inputForm.experiences[index_experience].startTime"
|
|
|
+ type="date"
|
|
|
+ placeholder="选择开始时间"
|
|
|
+ style="width:100%"
|
|
|
+ size="default"
|
|
|
+ placement="bottom-start"
|
|
|
+ clearable>
|
|
|
+ </el-date-picker>
|
|
|
+ </u-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="24">
|
|
|
+ <u-form-item label="结束时间" :prop="'experiences[' + index_experience + '].endTime'" :required="true"
|
|
|
+ :rules="[
|
|
|
+ ]">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="inputForm.experiences[index_experience].endTime"
|
|
|
+ type="date"
|
|
|
+ placeholder="选择开始时间"
|
|
|
+ style="width:100%"
|
|
|
+ size="default"
|
|
|
+ placement="bottom-start"
|
|
|
+ clearable>
|
|
|
+ </el-date-picker>
|
|
|
+ </u-form-item>
|
|
|
+ </el-col>
|
|
|
+
|
|
|
+ <el-col :span="24">
|
|
|
+ <u-form-item label="实践单位" :prop="'experiences[' + index_experience + '].practiceUnit'" :required="true"
|
|
|
+ :rules="[
|
|
|
+ ]">
|
|
|
+ <el-input v-model="inputForm.experiences[index_experience].practiceUnit" placeholder="请填写实践单位" clearable></el-input>
|
|
|
+ </u-form-item>
|
|
|
+ </el-col>
|
|
|
+
|
|
|
+ <el-col :span="24">
|
|
|
+ <u-form-item label="岗位" :prop="'experiences[' + index_experience + '].post'" :required="true"
|
|
|
+ :rules="[
|
|
|
+ ]">
|
|
|
+ <el-input v-model="inputForm.experiences[index_experience].post" placeholder="请填写岗位" clearable></el-input>
|
|
|
+ </u-form-item>
|
|
|
+ </el-col>
|
|
|
+
|
|
|
+ <el-col :span="24" style="text-align: center">
|
|
|
+ <u-form-item label="" >
|
|
|
+ <el-button style="width: 100%" type="danger" @click="removeRow(index_experience)" plain>删除实习经验 {{index_experience + 1}}</el-button>
|
|
|
+ </u-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <u-form-item label="" >
|
|
|
+ <el-button style="width: 100%" type="primary" @click="addRow()" plain>新增实习经验</el-button>
|
|
|
+ </u-form-item>
|
|
|
|
|
|
- <u-form-item label="家庭成员">
|
|
|
+
|
|
|
+
|
|
|
+ <!--<u-form-item label="家庭成员">
|
|
|
<el-button type="primary" @click="addRow2">新增</el-button>
|
|
|
- </u-form-item>
|
|
|
+ </u-form-item>-->
|
|
|
|
|
|
<!-- 表格 -->
|
|
|
- <el-table :data="inputForm.familyMembers" style="width: 100%">
|
|
|
+ <!--<el-table :data="inputForm.familyMembers" style="width: 100%">
|
|
|
<el-table-column label="称呼">
|
|
|
<template slot-scope="scope">
|
|
|
<el-input placeholder="请填写称呼" v-model="scope.row.callName"/>
|
|
@@ -162,13 +229,66 @@
|
|
|
<el-input placeholder="请填写工作单位" v-model="scope.row.workUnit"/>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <!-- 添加其他表格列 -->
|
|
|
+ <!– 添加其他表格列 –>
|
|
|
<el-table-column label="操作">
|
|
|
<template slot-scope="scope">
|
|
|
<el-button @click="removeRow2(scope.$index)" type="danger" icon="el-icon-delete">删除</el-button>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- </el-table>
|
|
|
+ </el-table>-->
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ <el-row :gutter="15" :key="index_family" v-for="(item,index_family) in this.inputForm.familyMembers">
|
|
|
+ <el-col :span="24">
|
|
|
+ <el-form-item label="" >
|
|
|
+ <el-divider content-position="left"> 家庭成员 {{index_family + 1}}</el-divider>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+
|
|
|
+ <el-col :span="24">
|
|
|
+ <u-form-item label="关系" :prop="'familyMembers[' + index_family + '].callName'" :required="true"
|
|
|
+ :rules="[
|
|
|
+ ]">
|
|
|
+ <el-input v-model="inputForm.familyMembers[index_family].callName" placeholder="请填写成员关系" clearable></el-input>
|
|
|
+ </u-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="24">
|
|
|
+ <u-form-item label="成员姓名" :prop="'familyMembers[' + index_family + '].name'" :required="true"
|
|
|
+ :rules="[
|
|
|
+ ]">
|
|
|
+ <el-input v-model="inputForm.familyMembers[index_family].name" placeholder="请填写成员姓名" clearable></el-input>
|
|
|
+ </u-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="24">
|
|
|
+ <u-form-item label="联系方式" :prop="'familyMembers[' + index_family + '].phone'" :required="true"
|
|
|
+ :rules="[
|
|
|
+ ]">
|
|
|
+ <el-input v-model="inputForm.familyMembers[index_family].phone" placeholder="请填写联系方式" @blur="checkMobile(scope.row)" clearable></el-input>
|
|
|
+ </u-form-item>
|
|
|
+ </el-col>
|
|
|
+
|
|
|
+ <el-col :span="24">
|
|
|
+ <u-form-item label="工作单位" :prop="'familyMembers[' + index_family + '].workUnit'"
|
|
|
+ :rules="[
|
|
|
+ ]">
|
|
|
+ <el-input v-model="inputForm.familyMembers[index_family].workUnit" placeholder="请填写工作单位" clearable></el-input>
|
|
|
+ </u-form-item>
|
|
|
+ </el-col>
|
|
|
+
|
|
|
+ <el-col :span="24" style="text-align: center">
|
|
|
+ <u-form-item label="" >
|
|
|
+ <el-button style="width: 100%" type="danger" @click="removeRow2(index_family)" plain>删除家庭成员 {{index_family + 1}}</el-button>
|
|
|
+ </u-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+
|
|
|
+ <u-form-item label="" >
|
|
|
+ <el-button style="width: 100%" type="primary" @click="addRow3()" plain>新增家庭成员</el-button>
|
|
|
+ </u-form-item>
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
<u-form-item style="margin-top: 20px; text-align: center;">
|
|
|
<el-button type="primary" @click="saveForm" style="width: 100%;">
|
|
|
<span style="margin: 0 auto;">提交</span>
|
|
@@ -254,16 +374,12 @@
|
|
|
}
|
|
|
],
|
|
|
'mobilePhone': [
|
|
|
- {
|
|
|
- required: true,
|
|
|
- message: '联系电话不能为空',
|
|
|
- trigger: ['blur', 'change']
|
|
|
- },
|
|
|
{
|
|
|
- validator: (rule, value, callback) => this.validatePhone(value, callback),
|
|
|
- trigger: ['blur', 'change']
|
|
|
+ required: true,
|
|
|
+ message: '联系电话不能为空',
|
|
|
+ trigger: ['blur', 'change']
|
|
|
}
|
|
|
- ],
|
|
|
+ ],
|
|
|
'idCard': [
|
|
|
{
|
|
|
validator: (rule, value, callback) => this.isCardId(value, callback),
|
|
@@ -323,6 +439,26 @@
|
|
|
})
|
|
|
this.inputForm.idCard = ''
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+ if (this.isEmpty(this.inputForm.practiceStartDay)) {
|
|
|
+ uni.showToast({
|
|
|
+ title: '实习开始时间不能为空',
|
|
|
+ icon: "none",
|
|
|
+ duration:2000
|
|
|
+ })
|
|
|
+ throw new Error('实习开始时间不能为空')
|
|
|
+ }
|
|
|
+ if (this.isEmpty(this.inputForm.practiceCompleteDay)) {
|
|
|
+ uni.showToast({
|
|
|
+ title: '实习结束时间不能为空',
|
|
|
+ icon: "none",
|
|
|
+ duration:2000
|
|
|
+ })
|
|
|
+ throw new Error('实习结束时间不能为空')
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
if (this.isEmpty(this.inputForm.familyMembers)) {
|
|
|
uni.showToast({
|
|
|
title: '请至少填写一条家庭成员信息',
|
|
@@ -331,14 +467,15 @@
|
|
|
})
|
|
|
throw new Error('请至少填写一条家庭成员信息')
|
|
|
} else {
|
|
|
+ console.log(this.inputForm.familyMembers)
|
|
|
this.inputForm.familyMembers.forEach((item, index) => {
|
|
|
if (this.isEmpty(item.callName)) {
|
|
|
uni.showToast({
|
|
|
- title: '家庭成员明细中第' + (index + 1) + '条数据的 “称呼” 不能为空',
|
|
|
+ title: '家庭成员明细中第' + (index + 1) + '条数据的 “关系” 不能为空',
|
|
|
icon: "none",
|
|
|
duration:2000
|
|
|
})
|
|
|
- throw new Error('家庭成员明细中第' + (index + 1) + '条数据的 “称呼” 不能为空')
|
|
|
+ throw new Error('家庭成员明细中第' + (index + 1) + '条数据的 “关系” 不能为空')
|
|
|
}
|
|
|
if (this.isEmpty(item.name)) {
|
|
|
uni.showToast({
|
|
@@ -378,10 +515,14 @@
|
|
|
experience.startTime = this.formatDate(experience.startTime);
|
|
|
experience.endTime = this.formatDate(experience.endTime);
|
|
|
});
|
|
|
-
|
|
|
+
|
|
|
+ if(this.inputForm.practiceStartDay){
|
|
|
this.inputForm.practiceStartDay = this.formatDate(this.inputForm.practiceStartDay)
|
|
|
+ }
|
|
|
+ if(this.inputForm.practiceCompleteDay){
|
|
|
this.inputForm.practiceCompleteDay = this.formatDate(this.inputForm.practiceCompleteDay)
|
|
|
-
|
|
|
+ }
|
|
|
+ console.log(this.inputForm)
|
|
|
registerService.save(this.inputForm).then((data) => {
|
|
|
// 接口调用成功,隐藏加载动画
|
|
|
uni.hideLoading();
|
|
@@ -405,6 +546,11 @@
|
|
|
// 点击新增按钮时,向表格中添加一行空数据
|
|
|
this.inputForm.familyMembers.push({ startTime: '', endTime: '' });
|
|
|
},
|
|
|
+ addRow3() {
|
|
|
+ // 点击新增按钮时,向表格中添加一行空数据
|
|
|
+ this.inputForm.familyMembers.push({ startTime: '', endTime: '' });
|
|
|
+ },
|
|
|
+
|
|
|
removeRow2(index) {
|
|
|
// 点击删除按钮时,从表格中移除指定行
|
|
|
// this.tableData.splice(index, 1);
|