华西海圻ELN前端工程
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

236 lines
7.5 KiB

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="right-top">
<el-button @click="cancel()">{{ $t('form.cancel') }}</el-button>
<el-button type="primary" v-if="form.bdzt === 5 && form.tbzt === 1" @click="openApprove = true">{{
$t('page.business.study.studyFormPre.tb') }}</el-button>
</div>
</div>
<div class="edit-content ">
<div class="content-left">
<TemplateTable ref="templateTable" :sn="form.templateSn" :templateData="form.bdnr" fillType="readonly" />
<div class="content-title">
<div class="line"></div>
<div class="subtitle"> {{ $t('page.business.study.studyFormPre.qmxx') }}</div>
</div>
<div class="pal">
<el-table :data="qmxxList" v-loading="loadingQmxx">
<el-table-column :label="$t('page.business.study.studyFormPre.qmr')" align="center" prop="qmrMc"
width="150px" />
<el-table-column :label="$t('page.business.study.studyFormPre.qmyy')" align="center" prop="qmyy"
width="150px" />
<el-table-column :label="$t('page.business.study.studyFormPre.qmsj')" align="center" prop="createTime"
width="150px" />
<el-table-column :label="$t('page.business.study.studyFormPre.bzyy')" align="center" prop="remark"
:show-overflow-tooltip="true" />
</el-table>
</div>
<div class="pal">
<pagination v-show="totalQmxx > 0" :total="totalQmxx" :page.sync="queryParamsQmxx.pageNum"
:limit.sync="queryParamsQmxx.pageSize" @pagination="getQmxxList" />
</div>
</div>
<div class="content-right">
<div class="content-title">
<div class="line"></div>
<div class="subtitle"> {{ $t('page.business.study.studyFormPre.jcgj') }}</div>
</div>
<JcgjList ref="jcgjList" @handleQuery="getJjcgjList" :showBj="false" :showXg="true"/>
<pagination v-show="jcgjTotal > 0" small layout="prev, pager, next" :total="jcgjTotal"
@pagination="getJjcgjList" />
</div>
</div>
</div>
<!-- 填报 -->
<el-dialog :title="$t('page.business.study.studyFormPre.cjjl')" :visible.sync="openApprove" width="500px"
append-to-body :close-on-click-modal="false">
<el-form ref="formApprove" :model="formApprove" :rules="rulesApprove" label-width="120px">
<el-alert :title="$t('page.business.study.studyFormPre.ts')" :closable="false" type="success">
</el-alert>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" :value="formApprove.qmyy" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="remark">
<el-input type="textarea" v-model="formApprove.remark" :rows="5" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.signer')">
<el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.password')" prop="qmrmm">
<el-input type="password" v-model="formApprove.qmrmm" maxlength="20"
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="approve">{{ $t('form.confirm') }}</el-button>
<el-button @click="openApprove = false">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { studyFormPre_tb, studyFormPre_info, studyFormPre_jcgj, studyFormPre_qmxx } from "@/api/business/study/studyFormPre"
import { mapGetters } from 'vuex'
import JcgjList from "@/views/business/comps/common/JcgjList";
import TemplateTable from '@/views/business/comps/template/TemplateTable';
export default {
name: "Xq",
components: { JcgjList, TemplateTable },
data() {
return {
openApprove: false,
formApprove: {
id: null,
qmyy: '创建记录',
remark: '',
qmrmm: '',
},
rulesApprove: {
qmrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
},
qmxxList: [],
totalQmxx: 0,
loadingQmxx: true,
queryParamsQmxx: {
formId: null,
pageNum: 1,
pageSize: 10
},
open: false,
showIndex: 1,
form: {},
rules: {
bdmc: [{
required: true,
message: ' ',
trigger: 'blur'
}],
templateId: [{
required: true,
message: ' ',
trigger: 'blur'
}]
},
jcgjTotal: 0,
jcgjList: [],
queryParamsJcgj: {
pageNum: 1,
formId: null,
pageSize: 10,
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
getJjcgjList(val) {
this.$modal.loading()
studyFormPre_jcgj(_.merge({}, this.queryParamsJcgj, val)).then(response => {
this.jcgjList = response.rows
this.jcgjTotal = response.total
this.$refs.jcgjList.init(this.jcgjList)
this.$modal.closeLoading()
}).finally(() => {
this.$modal.closeLoading()
})
},
getQmxxList() {
this.loadingQmxx = true
studyFormPre_qmxx(this.queryParamsQmxx).then(response => {
this.qmxxList = response.rows
this.totalQmxx = response.total
this.loadingQmxx = false
})
},
cancel() {
this.$emit('close')
},
reset() {
this.form = {
id: null,
studyId: null,
bdbh: null,
bdmc: null,
bdsm: null,
templateId: null,
templateMc: null,
bdnr: null
}
this.resetForm("form")
},
show(row) {
this.reset()
this.$modal.loading()
this.formApprove.id = row.id
this.queryParamsJcgj.formId = row.id
this.queryParamsQmxx.formId = row.id
studyFormPre_info({ id: row.id }).then(response => {
this.form = response.data
this.open = true
this.getQmxxList()
this.getJjcgjList()
this.$modal.closeLoading()
}).finally(() => {
this.$modal.closeLoading()
})
},
approve() {
this.$refs["formApprove"].validate(valid => {
if (valid) {
this.$modal.loading()
studyFormPre_tb(this.formApprove).then(response => {
this.$emit('close')
this.openApprove = false
this.$modal.closeLoading()
}).finally(() => {
this.$modal.closeLoading()
})
}
})
}
}
}
</script>