|
|
- G<template>
- <div>
- <div class="edit-container">
- <div class="edit-top">
- <div class="left-top">
- <img src="@/assets/images/back.png" @click="cancel()" />
- <div class="left-title"></div>
- </div>
- <div class="center-top">
- <div>
- <div :class="showIndex == 1 ? 'el-step__icon is-text is-finish' : 'el-step__icon is-text is-info'">
- <div class="el-step__icon-inner">1</div>
- </div>
- {{ $t('page.business.study.studyFormFill.jcsz') }}
- </div>
- <div class="line"></div>
- <div>
- <div :class="showIndex == 2 ? 'el-step__icon is-text is-finish' : 'el-step__icon is-text is-info'">
- <div class="el-step__icon-inner">2</div>
- </div>
- {{ $t('page.business.study.studyFormFill.bdtb') }}
- </div>
- </div>
- <div class="right-top">
- <el-button @click="cancel()">{{ $t('form.cancel') }}</el-button>
- <template v-if="showIndex == 1">
- <el-button @click="save">{{ $t('page.business.study.studyFormFill.zc') }}</el-button>
- <el-button type="primary" @click="next">{{ $t('page.business.study.studyFormFill.next') }}</el-button>
- </template>
- <template v-else>
- <el-button @click="saveNext">{{ $t('page.business.study.studyFormFill.save') }}</el-button>
- <el-button type="primary" @click="openSubmit = true">{{ $t('page.business.study.studyFormFill.submit')
- }}</el-button>
- </template>
- </div>
- </div>
- <div class="edit-content">
- <div class="content" style="width:60%" v-show="showIndex == 1">
- <el-form ref="form" :model="form" :rules="rules" label-width="120px">
- <el-row>
- <el-col :span="24">
- <el-form-item :label="$t('page.business.form.bdmb')" prop="templateId">
- <SelectTemplate v-model="form.templateId" :name="form.templateMc" @change="selectTemplateChange"
- :needPre="1" />
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="24">
- <el-form-item :label="$t('page.business.form.bdmc')" prop="bdmc">
- <el-input type="text" v-model="form.bdmc" maxlength="50" :placeholder="$t('form.placeholderInput')" />
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="24">
- <el-form-item :label="$t('page.business.study.studyFormFill.sfbl')" prop="sfbl">
- <el-select v-model="form.sfbl" :placeholder="$t('form.placeholderSelect')">
- <el-option :label="$t('page.business.study.studyFormFill.yes')" :value="10" />
- <el-option :label="$t('page.business.study.studyFormFill.no')" :value="1" />
- </el-select>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="24">
- <el-form-item :label="$t('page.business.study.studyFormFill.bdsm')" prop="bdsm">
- <el-input type="textarea" v-model="form.bdsm" :rows="5" maxlength="500"
- :placeholder="$t('form.placeholderInput')">
- </el-input>
- </el-form-item>
- </el-col>
- </el-row>
- </el-form>
- </div>
- <div class="content" v-show="showIndex == 2">
- <TemplateTable ref="templateTable" :sn="form.templateSn" :templateData="getTemplateData" fillType="preFill" />
- </div>
- </div>
- </div>
-
- <el-dialog :title="$t('page.business.study.studyFormFill.tjjl')" :visible.sync="openSubmit" width="500px"
- append-to-body :close-on-click-modal="false">
- <el-form ref="formSubmit" :model="form" :rules="rulesApprove" label-width="120px">
- todo
- </el-form>
- <!-- <div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="tj">{{ $t('form.confirm') }}</el-button>
- <el-button @click="openSubmit = false">{{ $t('form.cancel') }}</el-button>
- </div> -->
- </el-dialog>
- </div>
- </template>
-
- <script>
- import { studyFormFill_bc, studyFormFill_tj, studyFormFill_info } from "@/api/business/study/studyFormFill"
- import { mapGetters } from 'vuex'
- import SelectTemplate from "@/views/business/comps/select/SelectTemplate";
- import SelectDeptUser from '@/views/business/comps/select/SelectDeptUser';
- import TemplateTable from '@/views/business/comps/template/TemplateTable';
-
- export default {
- name: "Bj",
- components: { SelectTemplate, SelectDeptUser, TemplateTable },
- data() {
- return {
- open: false,
- showIndex: 1,
- form: {},
- openSubmit: false,
- rulesApprove: {
- qmrmm: [{
- required: true,
- message: ' ',
- trigger: 'blur'
- }],
- fzrsh: [{
- required: true,
- message: ' ',
- trigger: 'blur'
- }],
- shryId: [{
- required: true,
- message: ' ',
- trigger: 'blur'
- }]
- },
- rules: {
- bdmc: [{
- required: true,
- message: ' ',
- trigger: 'blur'
- }],
- templateId: [{
- required: true,
- message: ' ',
- trigger: 'blur'
- }],
- sfbl: [{
- required: true,
- message: ' ',
- trigger: 'blur'
- }],
-
- }
- }
- },
- computed: {
- ...mapGetters([
- 'nickName'
- ]),
- },
- created() {
- },
- methods: {
- getTemplateData() {
- if (this.form.bdnr && this.form.bdnr != '') {
- return JSON.parse(this.form.bdnr)
- } else {
- return {}
- }
- },
- next() {
- this.$refs["form"].validate(valid => {
- if (valid) {
- this.showIndex = 2
- }
- })
- },
- selectTemplateChange(val) {
- this.form.bdnr = val.content
- this.form.templateMc = val.name
- },
- cancel() {
- this.$emit('close')
- },
- reset() {
- this.form = {
- id: null,
- studyId: null,
- bdbh: null,
- bdmc: null,
- bdsm: null,
- templateId: null,
- templateMc: null,
- bdnr: null,
- fzrsh: null,
- shryId: null,
- sfbl: null,
- shryMc: null,
- }
- this.resetForm("form")
- },
- selectDeptUserChange(val) {
- this.form.shryMc = val.name
- },
- edit(row) {
- this.reset()
- this.showIndex = 1
- if (row && row.id) {
- this.$modal.loading()
- studyFormFill_info({ id: row.id }).then(response => {
- this.form = response.data
- this.form.qmyy = '制作提交预制表单'
- this.open = true
- this.$modal.closeLoading()
- })
- } else {
- this.form = _.merge({}, this.form, row)
- this.open = true
- }
- },
- save() {
- this.$refs["form"].validate(valid => {
- if (valid) {
- this.$modal.loading()
- studyFormFill_bc(this.form).then(response => {
- this.$emit('close')
- this.$modal.closeLoading()
- }).finally(() => {
- this.$modal.closeLoading()
- })
- }
- })
- },
- async saveNext() {
- let content = await this.$refs.templateTable.getFormData()
- this.form.bdnr = JSON.stringify(content)
- this.$modal.loading()
- studyFormFill_bc(this.form).then(response => {
- this.$emit('close')
- this.$modal.closeLoading()
- }).finally(() => {
- this.$modal.closeLoading()
- })
- },
- tj() {
- this.$refs["formSubmit"].validate(valid => {
- if (valid) {
- this.dotj()
- }
- })
- },
- async dotj() {
- let content = await this.$refs.templateTable.getFormData()
- this.form.bdnr = JSON.stringify(content)
- this.$modal.loading()
- studyFormFill_tj(this.form).then(response => {
- this.$emit('close')
- this.openSubmit = false
- this.$modal.closeLoading()
- }).finally(() => {
- this.$modal.closeLoading()
- })
- }
- }
- }
- </script>
|