123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491 |
- <template>
- <view class="jz-content-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>
- <!-- 职业名称(picker 实现下拉选择) -->
- <view class="form-label-select">
- <view class="phone-form-label"><text class="form-label-require">*</text>职业名称</view>
- <picker mode="selector" :disabled="isJgFlag" :style="isJgFlag?'color:#999':''" :range="zhiyeNames" range-key="name" @change="zhiyeChange"
- class="select-picker-box">
- <view class="form-radio-select">
- <view>{{ formData.zhiyeName || '请选择职业名称' }}</view>
- <icon></icon>
- </view>
- </picker>
- </view>
- <!-- 职业等级(picker 实现下拉选择) -->
- <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="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="kechengChange">
- <label class="radio-label">
- <radio :value="'true'" :disabled=" formData.kcDisabled" :checked="formData.needKecheng == 'true'"
- color="#3fd2a1" style="transform:scale(0.65)" />
- <text>是</text>
- </label>
- <label class="radio-label">
- <radio :value="'false'" :checked="formData.needKecheng == 'false'" color="#3fd2a1"
- style="transform:scale(0.65)" />
- <text>否</text>
- </label>
- </radio-group>
- </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="page-btn-box">
- <button type="default" @click="goBack" class="phone-white-btn">返回</button>
- <button type="default" @click="addSaveForm" class="phone-green-btn">添加</button>
- </view>
- <!-- 提交按钮 -->
- <!-- <button class="submit-btn" @click="submitForm">提交</button> -->
- </view>
- </template>
- <script>
- import {
- getBaozhengJigou,
- getJiazhengLevel,
- getJiazhengZhiye,
- getJiazhengBanzhengCheckKc
- } from "@/api/jiazheng.js"
- import dayjs from "dayjs";
- 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
- };
- },
- props: {
- status: {
- type: String,
- }
- },
- 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);
- },
- },
- created() {
- this.getJigou()
- this.localStatus = this.status
- },
- methods: {
- goBack(){
- this.isJgFlag = true
- this.isZyFlag = true
- this.$emit('goBack');
- },
- editinfo(data,index) {
-
- console.log('123123',data);
- this.$nextTick(() => {
- if (!data) {
- return false
- }
- console.log('datssssa', data);
- this.currentIndex = index
- 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
- getJiazhengZhiye({
- id: this.formData.baozhengJigouId
- }).then(res => {
- console.log('res', res);
- this.zhiyeNameOpt = res.data
- })
- }
- 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
- }
- })
- },
- 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 = ''
- },
- 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
- },
- // 报证机构选择
- 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(e) {
- this.formData.zhiyeName = this.zhiyeNameOpt[e.detail.value].name;
- this.formData.zhiyeId = this.zhiyeNameOpt[e.detail.value].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);
- },
- // 提交表单
- addSaveForm() {
- //debugger
- console.log('statusstatusstatus', this.status);
- let req = {
- canxunshijian: this.formData.canxunshijian,
- jgId: this.formData.baozhengJigouId,
- needKaoshi: this.formData.needKaoshi,
- needKecheng: this.formData.needKecheng,
- shicaochengji: this.formData.shicaochengji,
- zongkeshi: this.formData.zongkeshi,
- zyId: this.formData.zhiyeId,
- zyLevel: this.formData.zhiyeLevelId,
- jgType: this.formData.baozhengJigouType,
- jgName: this.formData.baozhengJigouName,
- zyName: this.formData.zhiyeName,
- zyLevelName: this.formData.zhiyeLevelName,
- id: this.formData.id,
- createTime:dayjs().format("YYYY-MM-DD HH:mm:ss")
- }
- console.log('req', req);
- if(this.status =='add'||this.localStatus =='editadd'||this.localStatus =='addEdit'){
- req.createTime = dayjs().format("YYYY-MM-DD HH:mm:ss")
- }
- if(req.jgId =='' ||req.zyId =='' ||req.zyLevel ==''){
- uni.showToast({
- title: '请选择保证机构,职业名称,职业等级',
- icon: 'none'
- });
- return false
- }
- if (this.formData.baozhengJigouType == 1 && (this.formData.shicaochengji == '' || this.formData
- .zongkeshi ==
- '' || this.formData.canxunshijian == '')) {
- uni.showToast({
- title: '请填写参训时间,实操成绩,总课时',
- icon: 'none'
- });
- return false
- }
- console.log('req123123123',req);
- if (req.jgId && req.zyId && req.zyLevel) {
- if(this.localStatus == 'addEdit'){
- this.$emit('addEdit', req,'addEdit',this.currentIndex);
- }
- else if (this.status == 'add') {
- this.$emit('addSave', req);
- } else if (this.localStatus == 'editAdd') {
- this.$emit('editSave', req, 'editAdd');
- } else {
- this.$emit('editSave', req, 'edit',this.currentIndex);
- }
- } else if (req.jgId == '' && req.zyId == '' && req.zyLevel == '') {
- if (this.status == 'add') {
- this.$emit('addSave', '');
- } else if(this.localStatus == 'editAdd') {
- //this.$emit('editSave', '');
- // uni.showToast({
- // title: '请选择保证机构,职业名称,职业等级',
- // icon: 'none'
- // });
- // return false
- }else{
-
- }
- } else {
- uni.showToast({
- title: '请选择保证机构,职业名称,职业等级',
- icon: 'none'
- });
- return false
- }
- // // 表单验证
- // if (!this.formData.institution) {
- // uni.showToast({
- // title: '请选择报证机构',
- // icon: 'none'
- // });
- // return;
- // }
- // if (!this.formData.selectedLevel) {
- // uni.showToast({
- // title: '请选择职业等级',
- // icon: 'none'
- // });
- // return;
- // }
- // if (!this.formData.selectedOccupation) {
- // uni.showToast({
- // title: '请选择职业名称',
- // icon: 'none'
- // });
- // return;
- // }
- // // 提交数据(示例)
- // console.log('提交数据:', this.formData);
- // uni.showToast({
- // title: '提交成功'
- // });
- }
- }
- };
- </script>
|