| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499 | 
							- <template>
 
- 	<view class="jz-content-box">
 
- 		<view :class="isZijiazheng=='true'?'mask-view':''">
 
- 			<view class="content-body-box">
 
- 				<view v-if="status =='add'" class="bzsm-tip-box form-top-margin">
 
- 					<view class="title-btn-box">
 
- 						<view class="phone-line-title">说明</view>
 
- 						<view @click="resetFun" class="reset-btn">重置</view>
 
- 					</view>
 
- 					<view class="tip-content-box">1.如果不需要办理证书,可直接点击保存按钮。</view>
 
- 					<view class="tip-content-box">2.点击重置按钮,只重置办证信息,其他信息不改变。</view>
 
- 				</view>
 
- 				<!-- 报证机构(picker 实现下拉选择) -->
 
- 				<view class="form-label-select form-top-margin">
 
- 					<view class="phone-form-label"><text class="form-label-require">*</text>报证机构</view>
 
- 					<picker :disabled="(status =='edit'&&localStatus=='')" mode="selector" :range="jigouNames"
 
- 						@change="jigouChange" class="select-picker-box">
 
- 						<view class="form-radio-select"
 
- 							:class="{'form-radio-disabled': (status =='edit'&&localStatus=='')}">
 
- 							<view>{{ formData.baozhengJigouName || '请选择报证机构' }}</view>
 
- 							<icon></icon>
 
- 						</view>
 
- 					</picker>
 
- 				</view>
 
- 				<view v-if="formData.banzhengInfoFlag" class="form-label-select">
 
- 					<view class="phone-form-label"><text class="form-label-require">*</text>参训时间</view>
 
- 					<uni-datetime-picker class="form-radio-picker" v-model="formData.canxunshijian" type="date"
 
- 						@change="canxunShijianChange">
 
- 						<view class="form-radio-select">
 
- 							<view>{{formData.canxunshijian}}</view>
 
- 							<icon></icon>
 
- 						</view>
 
- 					</uni-datetime-picker>
 
- 				</view>
 
- 				<view v-if="formData.banzhengInfoFlag" class="form-label-input">
 
- 					<view class="phone-form-label"><text class="form-label-require">*</text>实操成绩</view>
 
- 					<input v-model="formData.shicaochengji" placeholder="请填写实操成绩" />
 
- 				</view>
 
- 				<view v-if="formData.banzhengInfoFlag" class="form-label-input">
 
- 					<view class="phone-form-label"><text class="form-label-require">*</text>总课时</view>
 
- 					<input v-model="formData.zongkeshi" placeholder="请填写总课时" />
 
- 				</view>
 
- 				<view v-if="formData.needFlag" class="form-label-select">
 
- 					<view class="phone-form-label"><text class="form-label-require"></text>需要考试</view>
 
- 					<radio-group @change="kaoshiChange">
 
- 						<label class="radio-label">
 
- 							<radio :value="'true'" :checked="formData.needKaoshi == 'true'" color="#3fd2a1"
 
- 								style="transform:scale(0.65)" />
 
- 							<text>是</text>
 
- 						</label>
 
- 						<label class="radio-label">
 
- 							<radio :value="'false'" :checked="formData.needKaoshi == 'false'" color="#3fd2a1"
 
- 								style="transform:scale(0.65)" />
 
- 							<text>否</text>
 
- 						</label>
 
- 					</radio-group>
 
- 				</view>
 
- 				<view class="form-label-input">
 
- 					<view class="phone-form-label"><text class="form-label-require">*</text>职业名称</view>
 
- 					<view @click="selectZy" class="input-text-row text-ellipsis-row">
 
- 						<!-- wgy看这  v-for去掉换成一个数组或字符串 -->
 
- 						<view class="text-ellipsis" v-if="zyNameAndLevel">{{zyNameAndLevel}}</view>
 
- 						<view class="text-ellipsis" v-else>请选择职业名称</view>
 
- 						<icon></icon>
 
- 					</view>
 
- 				</view>
 
- 				<view class="form-label-select">
 
- 					<view class="phone-form-label"><text class="form-label-require">*</text>职业等级</view>
 
- 					<picker mode="selector" :disabled="isZyFlag" :style="isZyFlag?'color:#999':''" :range="zhiyeLevels"
 
- 						@change="levelChange" class="select-picker-box">
 
- 						<view class="form-radio-select">
 
- 							<view>{{ formData.zhiyeLevelName || '请选择等级' }}</view>
 
- 							<icon></icon>
 
- 						</view>
 
- 					</picker>
 
- 				</view>
 
- 				<view v-if="isZijiazheng !='true'" class="page-btn-box">
 
- 					<button type="default" v-if="isZijiazheng !='true'" @click="goBack"
 
- 						class="phone-white-btn">返回</button>
 
- 					<button type="default" v-if="isZijiazheng !='true'" @click="addSaveFormPiliang"
 
- 						class="phone-green-btn">添加</button>
 
- 				</view>
 
- 			</view>
 
- 			<selectZyLevel ref="selectRef" @confirm-btn="selectZyLevelConfirm" :mode=modeControl
 
- 				:id="formData.baozhengJigouId"></selectZyLevel>
 
- 		</view>
 
- 	</view>
 
- </template>
 
- <script>
 
- 	import {
 
- 		getBaozhengJigou,
 
- 		getJiazhengLevel,
 
- 		getJiazhengZhiye,
 
- 		getJiazhengBanzhengCheckKc
 
- 	} from "@/api/jiazheng.js"
 
- 	import dayjs from "dayjs";
 
- 	import selectZyLevel from "@/components/selectZyLevel/index.vue"
 
- 	export default {
 
- 		data() {
 
- 			return {
 
- 				formData: {
 
- 					baozhengJigouId: '',
 
- 					baozhengJigouName: '',
 
- 					baozhengJigouType: '',
 
- 					banzhengInfoFlag: false,
 
- 					zhiyeName: '',
 
- 					zhiyeId: '',
 
- 					zhiyeLevelName: '',
 
- 					zhiyeLevelId: '',
 
- 					canxunshijian: '',
 
- 					shicaochengji: '',
 
- 					zongkeshi: '',
 
- 					needKecheng: 'false', // 默认选中"是"
 
- 					needKaoshi: 'false', // 默认选中"是"
 
- 					kcDisabled: false,
 
- 					needFlag: false,
 
- 					id: '',
 
- 					createTime: ''
 
- 				},
 
- 				baozhengJigouOpt: [
 
- 				],
 
- 				zhiyelevelsOpt: [],
 
- 				zhiyeNameOpt: [
 
- 				],
 
- 				localStatus: '',
 
- 				currentIndex: '',
 
- 				isJgFlag: true,
 
- 				isZyFlag: true,
 
- 				piliang: '',
 
- 				piliangArray: [],
 
- 				zyNameAndLevel: ''
 
- 			};
 
- 		},
 
- 		props: {
 
- 			status: {
 
- 				type: String,
 
- 			},
 
- 			isZijiazheng: {
 
- 				type: String,
 
- 			}
 
- 		},
 
- 		components: {
 
- 			selectZyLevel
 
- 		},
 
- 		computed: {
 
- 			jigouNames() {
 
- 				return this.baozhengJigouOpt.map(item => item.name);
 
- 			},
 
- 			zhiyeNames() {
 
- 				return this.zhiyeNameOpt.map(item => item.name);
 
- 			},
 
- 			zhiyeLevels() {
 
- 				return this.zhiyelevelsOpt.map(item => item.name);
 
- 			},
 
- 			modeControl() {
 
- 				if (this.localStatus == 'addEdit') {
 
- 					return 'danxuan'
 
- 				} else if (this.status == 'add') {
 
- 					return 'duoxuan'
 
- 				} else if (this.localStatus == 'editAdd') {
 
- 					return 'duoxuan'
 
- 				} else {
 
- 					return 'danxuan'
 
- 				}
 
- 			}
 
- 		},
 
- 		created() {
 
- 			this.getJigou()
 
- 			this.localStatus = this.status
 
- 		},
 
- 		methods: {
 
- 			selectZy() {
 
- 				if (this.formData.baozhengJigouId == '') {
 
- 					uni.showToast({
 
- 						title: '请选择报证机构',
 
- 						icon: 'none'
 
- 					});
 
- 					return false
 
- 				}
 
- 				console.log('this.piliangArray', this.piliangArray);
 
- 				let newArray = this.piliangArray.map(item => {
 
- 					return {
 
- 						zyId: item.id,
 
- 						zyName: item.name,
 
- 					};
 
- 				});
 
- 				this.$refs.selectRef.handleShow(newArray)
 
- 			},
 
- 			selectZyLevelConfirm(data) {
 
- 				console.log('data', data);
 
- 				this.piliangArray = [...data]
 
- 				this.zyNameAndLevel = data.map(item => `${item.name}`).join(',');
 
- 				console.log('this.piliangArray', this.piliangArray);
 
- 				this.zhiyeChange(this.piliangArray)
 
- 				//234
 
- 			},
 
- 			// 提交表单
 
- 			addSaveFormPiliang() {
 
- 				let req = {
 
- 					zyLevelName: this.formData.zhiyeLevelName,
 
- 					zyLevel: this.formData.zhiyeLevelId,
 
- 					canxunshijian: this.formData.canxunshijian,
 
- 					jgId: this.formData.baozhengJigouId,
 
- 					needKaoshi: this.formData.needKaoshi,
 
- 					needKecheng: this.formData.needKecheng,
 
- 					shicaochengji: this.formData.shicaochengji,
 
- 					zongkeshi: this.formData.zongkeshi,
 
- 					jgType: this.formData.baozhengJigouType,
 
- 					jgName: this.formData.baozhengJigouName,
 
- 					id: this.formData.id,
 
- 					createTime: dayjs().format("YYYY-MM-DD HH:mm:ss")
 
- 				}
 
- 				let mergedArray = this.piliangArray.map(item => {
 
- 					return {
 
- 						...req, // 展开req的所有属性
 
- 						zyId: item.id,
 
- 						zyName: item.name,
 
- 					};
 
- 				});
 
- 				console.log('this.mergedArray', mergedArray);
 
- 				if (req.jgId == '') {
 
- 					uni.showToast({
 
- 						title: '请选择报证机构',
 
- 						icon: 'none'
 
- 					});
 
- 					return false
 
- 				}
 
- 				if (this.piliangArray.length == 0) {
 
- 					uni.showToast({
 
- 						title: '请选择职业名称',
 
- 						icon: 'none'
 
- 					});
 
- 					return false
 
- 				}
 
- 				if (!req.zyLevel) {
 
- 					uni.showToast({
 
- 						title: '请选择职业等级',
 
- 						icon: 'none'
 
- 					});
 
- 					return false
 
- 				}
 
- 				// 验证机构类型为1时的必填字段
 
- 				if (this.formData.baozhengJigouType == 1 &&
 
- 					(this.formData.shicaochengji == '' ||
 
- 						this.formData.zongkeshi == '' ||
 
- 						this.formData.canxunshijian == '')) {
 
- 					uni.showToast({
 
- 						title: '请填写参训时间,实操成绩,总课时',
 
- 						icon: 'none'
 
- 					});
 
- 					return false
 
- 				}
 
- 				console.log('this.status', this.status);
 
- 				console.log('this.localStatus', this.localStatus);
 
- 				console.log('this.mergedArray', mergedArray);
 
- 				if (this.localStatus == 'addEdit') {
 
- 					this.$emit('addEdit', mergedArray[0], 'addEdit', this.currentIndex);
 
- 				} else if (this.status == 'add') {
 
- 					this.$emit('addSave', mergedArray);
 
- 				} else if (this.localStatus == 'editAdd') {
 
- 					this.$emit('editSave', mergedArray, 'editAdd');
 
- 				} else {
 
- 					this.$emit('editSave', mergedArray[0], 'edit', this.currentIndex);
 
- 				}
 
- 			},
 
- 			goBack() {
 
- 				this.isJgFlag = true
 
- 				this.isZyFlag = true
 
- 				this.piliangArray = []
 
- 				this.$emit('goBack');
 
- 			},
 
- 			editinfo(data, index) {
 
- 				this.piliangArray = []
 
- 				this.$nextTick(() => {
 
- 					if (!data) {
 
- 						return false
 
- 					}
 
- 					console.log('index', index);
 
- 					console.log('data', data);
 
- 					this.currentIndex = index
 
- 					this.zyNameAndLevel = data.zyName
 
- 					this.formData.baozhengJigouName = data.jgName;
 
- 					this.formData.baozhengJigouId = data.jgId;
 
- 					this.formData.id = data.id;
 
- 					this.formData.baozhengJigouType = data.jgType;
 
- 					this.formData.banzhengInfoFlag = data.jgType == 1;
 
- 					this.formData.zhiyeName = data.zyName;
 
- 					this.formData.zhiyeId = data.zyId;
 
- 					this.formData.zhiyeLevelName = data.zyLevelName;
 
- 					this.formData.zhiyeLevelId = data.zyLevel;
 
- 					if (this.formData.baozhengJigouId) {
 
- 						this.isJgFlag = false
 
- 					}
 
- 					if (this.formData.baozhengJigouId && this.formData.zhiyeId) {
 
- 						this.isZyFlag = false
 
- 						let req = {
 
- 							jgId: this.formData.baozhengJigouId,
 
- 							zyId: this.formData.zhiyeId,
 
- 						}
 
- 						getJiazhengLevel(req).then(res => {
 
- 							console.log('res', res);
 
- 							this.zhiyelevelsOpt = res.data
 
- 						})
 
- 					}
 
- 					this.formData.canxunshijian = data.canxunshijian;
 
- 					this.formData.zongkeshi = data.zongkeshi;
 
- 					this.formData.shicaochengji = data.shicaochengji;
 
- 					this.formData.needKecheng = data.needKecheng ? data.needKecheng.toString() : 'false';
 
- 					this.formData.needKaoshi = data.needKaoshi ? data.needKaoshi.toString() : 'false';
 
- 					if (this.formData.banzhengInfoFlag) {
 
- 						this.formData.needFlag = false
 
- 					} else {
 
- 						this.formData.needFlag = true
 
- 					}
 
- 					this.piliangArray = [{
 
- 						id: data.zyId,
 
- 						name: data.zyName,
 
- 						zyLevel: data.zyLevel,
 
- 						zyLevelName: data.zyLevelName
 
- 					}]
 
- 				})
 
- 			},
 
- 			getJigou() {
 
- 				getBaozhengJigou({}).then(res => {
 
- 					console.log('res', res);
 
- 					this.baozhengJigouOpt = res.data
 
- 				})
 
- 			},
 
- 			getZhiye() {
 
- 				this.zhiyeNameOpt = []
 
- 				this.formData.zhiyeName = ''
 
- 				this.formData.zhiyeId = ''
 
- 				getJiazhengZhiye({
 
- 					id: this.formData.baozhengJigouId
 
- 				}).then(res => {
 
- 					console.log('res', res);
 
- 					this.zhiyeNameOpt = res.data
 
- 				})
 
- 			},
 
- 			getZhiyeLevel() {
 
- 				this.zhiyelevelsOpt = []
 
- 				this.formData.zhiyeLevelName = ''
 
- 				this.formData.zhiyeLevelId = ''
 
- 				let req = {
 
- 					jgId: this.formData.baozhengJigouId,
 
- 					zyId: this.formData.zhiyeId,
 
- 				}
 
- 				getJiazhengLevel(req).then(res => {
 
- 					console.log('res', res);
 
- 					this.zhiyelevelsOpt = res.data
 
- 				})
 
- 			},
 
- 			resetData() {
 
- 				this.formData.zhiyeName = ''
 
- 				this.formData.zhiyeId = ''
 
- 				this.formData.zhiyeLevelName = ''
 
- 				this.formData.zhiyeLevelId = ''
 
- 				this.formData.canxunshijian = ''
 
- 				this.formData.shicaochengji = ''
 
- 				this.formData.zongkeshi = ''
 
- 				this.isJgFlag = true
 
- 				this.isZyFlag = true
 
- 				this.zyNameAndLevel = ''
 
- 				this.piliangArray = []
 
- 			},
 
- 			resetFun() {
 
- 				this.formData.zhiyeName = ''
 
- 				this.formData.zhiyeId = ''
 
- 				this.formData.zhiyeLevelName = ''
 
- 				this.formData.zhiyeLevelId = ''
 
- 				this.formData.canxunshijian = ''
 
- 				this.formData.shicaochengji = ''
 
- 				this.formData.zongkeshi = ''
 
- 				this.formData.baozhengJigouName = ''
 
- 				this.formData.baozhengJigouId = ''
 
- 				this.formData.baozhengJigouName = ''
 
- 				this.formData.needKecheng = 'false'
 
- 				this.formData.needKaoshi = 'false'
 
- 				this.formData.needFlag = false
 
- 				this.formData.kcDisabled = false
 
- 				this.formData.banzhengInfoFlag = false
 
- 				this.isJgFlag = true
 
- 				this.isZyFlag = true
 
- 				this.piliangArray = []
 
- 				this.zyNameAndLevel = ''
 
- 			},
 
- 			// 报证机构选择
 
- 			jigouChange(e) {
 
- 				this.formData.baozhengJigouName = this.baozhengJigouOpt[e.detail.value].name;
 
- 				this.formData.baozhengJigouId = this.baozhengJigouOpt[e.detail.value].jgId;
 
- 				this.formData.baozhengJigouType = this.baozhengJigouOpt[e.detail.value].jgType;
 
- 				this.formData.banzhengInfoFlag = this.baozhengJigouOpt[e.detail.value].jgType == 1;
 
- 				// 每一次都重置
 
- 				this.resetData()
 
- 				console.log('this.formData.banzhengInfoFlag', this.formData.banzhengInfoFlag);
 
- 				if (this.formData.banzhengInfoFlag) {
 
- 					this.formData.needFlag = false
 
- 					this.formData.needKaoshi = 'false'
 
- 					this.formData.needKecheng = 'false'
 
- 				} else {
 
- 					this.formData.needFlag = true
 
- 					this.formData.needKaoshi = 'true'
 
- 					this.formData.needKecheng = 'false'
 
- 				}
 
- 				if (this.formData.baozhengJigouId) {
 
- 					this.isJgFlag = false //开启
 
- 					//this.getZhiye()
 
- 				}
 
- 			},
 
- 			// 职业等级选择
 
- 			levelChange(e) {
 
- 				this.formData.zhiyeLevelId = this.zhiyelevelsOpt[e.detail.value].id;
 
- 				this.formData.zhiyeLevelName = this.zhiyelevelsOpt[e.detail.value].name;
 
- 			},
 
- 			checkKc() {
 
- 				let req = {
 
- 					zyId: this.formData.zhiyeId,
 
- 					zyLevel: this.formData.zhiyeLevelId
 
- 				}
 
- 				getJiazhengBanzhengCheckKc(req).then(res => {
 
- 					console.log('res', res);
 
- 					if (res.data.pass.toString() == 'true') {
 
- 						this.formData.kcDisabled = false
 
- 						this.formData.needKecheng = 'true'
 
- 					} else {
 
- 						uni.showToast({
 
- 							title: res.data.msg,
 
- 							icon: 'none'
 
- 						});
 
- 						this.formData.needKecheng = 'false'
 
- 						this.formData.kcDisabled = true
 
- 					}
 
- 					//	this.zhiyelevelsOpt = res.data
 
- 				})
 
- 			},
 
- 			// 职业名称选择
 
- 			zhiyeChange(data) {
 
- 				//123
 
- 				//	this.formData.zhiyeName = this.zhiyeNameOpt[e.detail.value].name;
 
- 				this.formData.zhiyeId = data[0].id;
 
- 				if (this.formData.baozhengJigouId && this.formData.zhiyeId) {
 
- 					this.isZyFlag = false
 
- 					this.getZhiyeLevel()
 
- 				}
 
- 			},
 
- 			canxunShijianChange(e) {
 
- 				console.log('e', e);
 
- 				this.formData.canxunshijian = e
 
- 			},
 
- 			// 需要课程选择
 
- 			kechengChange(e) {
 
- 				this.formData.needKecheng = e.detail.value.toString();
 
- 				console.log('this.formData.needKecheng', this.formData.needKecheng);
 
- 				if (this.formData.needKecheng == 'true') {
 
- 					if (this.formData.zhiyeId && this.formData.zhiyeLevelId) {
 
- 						this.checkKc()
 
- 					} else {
 
- 						uni.showToast({
 
- 							title: '请选择职业以及职业等级',
 
- 							icon: 'none'
 
- 						});
 
- 						setTimeout(() => {
 
- 							this.formData.needKecheng = 'false'
 
- 						}, 1000)
 
- 						return false
 
- 					}
 
- 				}
 
- 			},
 
- 			// 需要考试选择
 
- 			kaoshiChange(e) {
 
- 				this.formData.needKaoshi = e.detail.value.toString();
 
- 			},
 
- 			currentMove(data) {
 
- 				console.log('data', data);
 
- 				// currentMove 编辑状态下的新增
 
- 				this.localStatus = data
 
- 				console.log('localStatus', this.localStatus);
 
- 			}
 
- 		}
 
- 	};
 
- </script>
 
 
  |