cc15a2ad by zhangmeng

Merge branch 'devCop' into dev

2 parents 8878ce69 f873437f
1 <template> 1 <template>
2 <el-dialog 2 <el-dialog
3 v-model="show" :title="title" width="800px" append-to-body close-icon="CircleClose" center 3 v-model="show" :close-on-click-modal="false" :title="title" append-to-body center
4 :close-on-click-modal="false" class="pcloginpop" 4 class="pcloginpop"
5 destroy-on-close 5 close-icon="CircleClose" destroy-on-close
6 width="800px"
6 > 7 >
7 <!-- 随性人员--> 8
8 <div class="pd10"></div> 9 <!-- 随性人员-->
9 <el-form ref="dialogRef" :model="form" :rules="language==0?rules:rules_cn" label-width="160px" inline> 10 <div class="pd10" />
11 <el-form ref="dialogRef" :model="form" :rules="language==0?rules:rules_cn" inline label-width="160px">
10 <el-row :gutter="30"> 12 <el-row :gutter="30">
11 <el-col :lg="24"> 13 <el-col :lg="24">
12 14
13 <el-form-item :label="language==0?'姓氏':'surname'" prop="xing" required> 15 <el-form-item :label="language==0?'姓氏':'surname'" prop="xing" required>
14 <el-input v-model="form.xing"/> 16 <el-input v-model="form.xing" />
15 </el-form-item> 17 </el-form-item>
16 <el-form-item :label="language==0?'名':'name'" prop="ming" required> 18 <el-form-item :label="language==0?'名':'name'" prop="ming" required>
17 <el-input v-model="form.ming"/> 19 <el-input v-model="form.ming" />
18 </el-form-item> 20 </el-form-item>
19 <!-- <el-form-item :label="language==0?'证件类型':'ID type'" prop="idcType" required>--> 21 <!-- <el-form-item :label="language==0?'证件类型':'ID type'" prop="idcType" required>-->
20 <!-- <el-select v-model="form.idcType" style="width: 100%;">--> 22 <!-- <el-select v-model="form.idcType" style="width: 100%;">-->
...@@ -27,16 +29,16 @@ ...@@ -27,16 +29,16 @@
27 <!-- </el-select>--> 29 <!-- </el-select>-->
28 <!-- </el-form-item>--> 30 <!-- </el-form-item>-->
29 <el-form-item :label="language==0?'护照号':'PassPort Number'" prop="idcCode" required> 31 <el-form-item :label="language==0?'护照号':'PassPort Number'" prop="idcCode" required>
30 <el-input v-model="form.idcCode"/> 32 <el-input v-model="form.idcCode" />
31 </el-form-item> 33 </el-form-item>
32 <el-form-item :label="language==0?'护照文件':'Passport File'" required> 34 <el-form-item :label="language==0?'护照文件':'Passport File'" required>
33 <file-upload v-model="form.passportUrl" :limit="1" :is-show-tip="false" :button-text="'Upload'"/> 35 <file-upload v-model="form.passportUrl" :button-text="'Upload'" :is-show-tip="false" :limit="1" />
34 </el-form-item> 36 </el-form-item>
35 <el-form-item :label="language==0?'出生日期':'Date of Birth'" prop="birth" required> 37 <el-form-item :label="language==0?'出生日期':'Date of Birth'" prop="birth" required>
36 <el-date-picker 38 <el-date-picker
37 v-model="form.birth" 39 v-model="form.birth"
38 style="width: 100%;" 40 format="YYYY-MM-DD"
39 type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD" 41 style="width: 100%;" type="date" value-format="YYYY-MM-DD"
40 /> 42 />
41 </el-form-item> 43 </el-form-item>
42 <el-form-item :label="language==0?'性别':'sex'" prop="sex"> 44 <el-form-item :label="language==0?'性别':'sex'" prop="sex">
...@@ -48,7 +50,7 @@ ...@@ -48,7 +50,7 @@
48 50
49 <el-form-item :label="language==0?'主要会员角色':'roles'" prop="labelArr"> 51 <el-form-item :label="language==0?'主要会员角色':'roles'" prop="labelArr">
50 <el-select v-model="form.labelArr" multiple> 52 <el-select v-model="form.labelArr" multiple>
51 <el-option v-for="l in labels" :key="l.value" :value="l.value" :label="language==0?l.label:l.enlabel"/> 53 <el-option v-for="l in labels" :key="l.value" :label="language==0?l.label:l.enlabel" :value="l.value" />
52 </el-select> 54 </el-select>
53 </el-form-item> 55 </el-form-item>
54 56
...@@ -58,7 +60,7 @@ ...@@ -58,7 +60,7 @@
58 </el-form> 60 </el-form>
59 <template #footer> 61 <template #footer>
60 <div class="dialog-footer text-center"> 62 <div class="dialog-footer text-center">
61 <el-button type="primary" class="btn-lineG w200px" round @click="submitForm">{{ 63 <el-button class="btn-lineG w200px" round type="primary" @click="submitForm">{{
62 language == 0 ? '确定' : 'Save' 64 language == 0 ? '确定' : 'Save'
63 }} 65 }}
64 </el-button> 66 </el-button>
...@@ -68,16 +70,16 @@ ...@@ -68,16 +70,16 @@
68 </template> 70 </template>
69 71
70 <script setup> 72 <script setup>
71 import {reactive, ref, toRefs, watch} from 'vue' 73 import { reactive, ref, toRefs, watch } from 'vue'
72 import {getCurrentInstance, nextTick, onMounted} from '@vue/runtime-core' 74 import { getCurrentInstance, nextTick, onMounted } from '@vue/runtime-core'
73 import * as match from '@/apiPc/match' 75 import * as match from '@/apiPc/match'
74 import {ElMessage} from 'element-plus' 76 import { ElMessage } from 'element-plus'
75 import {nationList} from '@/assets/js/data' 77 import { nationList } from '@/assets/js/data'
76 import _ from 'lodash' 78 import _ from 'lodash'
77 import cache from "@/plugins/cache"; 79 import cache from '@/plugins/cache'
78 import {useStorage} from "@vueuse/core/index"; 80 import { useStorage } from '@vueuse/core/index'
79 81
80 const language= useStorage('language',0) 82 const language = useStorage('language', 0)
81 const certificates = ref([ 83 const certificates = ref([
82 { 84 {
83 value: '0', 85 value: '0',
...@@ -92,42 +94,42 @@ const certificates = ref([ ...@@ -92,42 +94,42 @@ const certificates = ref([
92 label: language.value == 0 ? '其他' : 'Other' 94 label: language.value == 0 ? '其他' : 'Other'
93 } 95 }
94 ]) 96 ])
95 const {proxy} = getCurrentInstance() 97 const { proxy } = getCurrentInstance()
96 const emit = defineEmits(['submitForm']) 98 const emit = defineEmits(['submitForm'])
97 const data = reactive({ 99 const data = reactive({
98 form: { 100 form: {
99 idcType: '1', 101 idcType: '1',
100 sex:'0' 102 sex: '0'
101 }, 103 },
102 rules: { 104 rules: {
103 xing: [{required: true, message: '必填', trigger: 'blur'}], 105 xing: [{ required: true, message: '必填', trigger: 'blur' }],
104 ming: [{required: true, message: '必填', trigger: 'blur'}], 106 ming: [{ required: true, message: '必填', trigger: 'blur' }],
105 idcCode: [{required: true, message: '必填', trigger: 'blur'}], 107 idcCode: [{ required: true, message: '必填', trigger: 'blur' }],
106 birth: [{required: true, message: '必填', trigger: 'change'}], 108 birth: [{ required: true, message: '必填', trigger: 'change' }],
107 sex: [{required: true, message: '必填', trigger: 'change'}], 109 sex: [{ required: true, message: '必填', trigger: 'change' }],
108 labelArr: [{required: true, message: '必填', trigger: 'blur'}] 110 labelArr: [{ required: true, message: '必填', trigger: 'blur' }]
109 }, 111 },
110 rules_cn: { 112 rules_cn: {
111 xing: [{required: true, message: 'required', trigger: 'blur'}], 113 xing: [{ required: true, message: 'required', trigger: 'blur' }],
112 ming: [{required: true, message: 'required', trigger: 'blur'}], 114 ming: [{ required: true, message: 'required', trigger: 'blur' }],
113 idcCode: [{required: true, message: 'required', trigger: 'blur'}], 115 idcCode: [{ required: true, message: 'required', trigger: 'blur' }],
114 birth: [{required: true, message: 'required', trigger: 'change'}], 116 birth: [{ required: true, message: 'required', trigger: 'change' }],
115 address: [{required: true, message: 'required', trigger: 'blur'}], 117 address: [{ required: true, message: 'required', trigger: 'blur' }],
116 sex: [{required: true, message: 'required', trigger: 'change'}], 118 sex: [{ required: true, message: 'required', trigger: 'change' }],
117 labelArr: [{required: true, message: 'required', trigger: 'blur'}] 119 labelArr: [{ required: true, message: 'required', trigger: 'blur' }]
118 }, 120 },
119 show: false, 121 show: false,
120 labels: [ 122 labels: [
121 // {value: '0', label: '运动员', enlabel: 'Athletes'}, 123 // {value: '0', label: '运动员', enlabel: 'Athletes'},
122 {value: '1', label: '教练', enlabel: 'Coach'}, 124 { value: '1', label: '教练', enlabel: 'Coach' },
123 {value: '2', label: '领队', enlabel: 'Head of team'}, 125 { value: '2', label: '领队', enlabel: 'Head of team' },
124 {value: '4', label: '队医', enlabel: 'Team doctor'}, 126 { value: '4', label: '队医', enlabel: 'Team doctor' },
125 {value: '5', label: '翻译', enlabel: 'Interpreter'}, 127 { value: '5', label: '翻译', enlabel: 'Interpreter' },
126 {value: '6', label: '官员', enlabel: 'Official'}, 128 { value: '6', label: '官员', enlabel: 'Official' },
127 {value: '3', label: '其他', enlabel: 'Other'} 129 { value: '3', label: '其他', enlabel: 'Other' }
128 ], 130 ],
129 title: 'Add accompanying personnel', 131 title: 'Add accompanying personnel',
130 cptId:'' 132 cptId: ''
131 }) 133 })
132 const { 134 const {
133 form, 135 form,
...@@ -157,7 +159,7 @@ const open = (params) => { ...@@ -157,7 +159,7 @@ const open = (params) => {
157 }) 159 })
158 } 160 }
159 } 161 }
160 defineExpose({open}) 162 defineExpose({ open })
161 watch(show, (value) => { 163 watch(show, (value) => {
162 if (!value) { 164 if (!value) {
163 form.value = {} 165 form.value = {}
...@@ -172,7 +174,7 @@ function submitForm() { ...@@ -172,7 +174,7 @@ function submitForm() {
172 ElMessage.warning('Please upload your passport file') 174 ElMessage.warning('Please upload your passport file')
173 return 175 return
174 } 176 }
175 if(Array.isArray(form.value.passportUrl)){ 177 if (Array.isArray(form.value.passportUrl)) {
176 form.value.passportUrl = form.value.passportUrl[0].url 178 form.value.passportUrl = form.value.passportUrl[0].url
177 } 179 }
178 proxy.$refs['dialogRef'].validate((valid) => { 180 proxy.$refs['dialogRef'].validate((valid) => {
......
...@@ -420,6 +420,7 @@ function submitForm() { ...@@ -420,6 +420,7 @@ function submitForm() {
420 } 420 }
421 421
422 function saveGroupMember() { 422 function saveGroupMember() {
423 form.value.personId = null
423 match.savePersonForMyGroup(form.value).then(res => { 424 match.savePersonForMyGroup(form.value).then(res => {
424 ElMessage.success(language.value == 0 ? '保存成功' : 'Save successful') 425 ElMessage.success(language.value == 0 ? '保存成功' : 'Save successful')
425 show.value = false 426 show.value = false
......
...@@ -493,6 +493,7 @@ function submitForm() { ...@@ -493,6 +493,7 @@ function submitForm() {
493 // 团队 493 // 团队
494 form.value.groupId = groupId.value 494 form.value.groupId = groupId.value
495 form.value.ocrFlag = '1' 495 form.value.ocrFlag = '1'
496 form.value.personId = null
496 match.savePersonForMyGroup(form.value).then(res => { 497 match.savePersonForMyGroup(form.value).then(res => {
497 ElMessage.success(language.value == 0 ? '保存成功' : 'Save successful') 498 ElMessage.success(language.value == 0 ? '保存成功' : 'Save successful')
498 show.value = false 499 show.value = false
......
...@@ -375,6 +375,7 @@ function submitForm() { ...@@ -375,6 +375,7 @@ function submitForm() {
375 if (groupId.value != 0) { 375 if (groupId.value != 0) {
376 // 团队 376 // 团队
377 form.value.groupId = groupId.value 377 form.value.groupId = groupId.value
378 form.value.personId = null
378 match.savePersonForMyGroup(form.value).then(res => { 379 match.savePersonForMyGroup(form.value).then(res => {
379 ElMessage.success(language.value == 0 ? '保存成功' : 'Save successful') 380 ElMessage.success(language.value == 0 ? '保存成功' : 'Save successful')
380 show.value = false 381 show.value = false
......
...@@ -346,6 +346,7 @@ function addPersonal() { ...@@ -346,6 +346,7 @@ function addPersonal() {
346 346
347 function addGroupMember() { 347 function addGroupMember() {
348 form.value.groupId = groupId 348 form.value.groupId = groupId
349 form.value.personId = null
349 match.savePersonForMyGroup(form.value).then(res => { 350 match.savePersonForMyGroup(form.value).then(res => {
350 ElMessage.success(language.value == 0 ? '保存成功' : 'Save successful') 351 ElMessage.success(language.value == 0 ? '保存成功' : 'Save successful')
351 show.value = false 352 show.value = false
......
...@@ -79,7 +79,9 @@ ...@@ -79,7 +79,9 @@
79 @response="ocrSuccess" 79 @response="ocrSuccess"
80 /> 80 />
81 <div class="tip"> 81 <div class="tip">
82 <span v-if="language==0">请上传有效身份证件扫描件,用于核实身份信息、申请签证邀请函及购买保险等</span> 82 <span
83 v-if="language==0"
84 >请上传有效身份证件扫描件,用于核实身份信息、申请签证邀请函及购买保险等</span>
83 <span v-else>Please upload a scanned copy of your valid passport for verification of identity information, 85 <span v-else>Please upload a scanned copy of your valid passport for verification of identity information,
84 application of visa invitation letter and purchasing insurance etc.</span> 86 application of visa invitation letter and purchasing insurance etc.</span>
85 </div> 87 </div>
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!