|
|
- <template>
- <div>
- <div class="edit-container" v-if="open">
- <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.studyFormApply.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.studyFormApply.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.studyFormApply.zc') }}</el-button>
- <el-button type="primary" @click="next">{{ $t('page.business.study.studyFormApply.next') }}</el-button>
- </template>
- <template v-else>
- <el-button @click="saveNext">{{ $t('page.business.study.studyFormApply.save') }}</el-button>
- <el-button type="primary" @click="showtijjiao">{{ $t('page.business.study.studyFormApply.submit')
- }}</el-button>
- <el-button type="primary" @click="pre">{{ $t('page.business.study.studyFormApply.pre') }}</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" :disabled="true" :name="form.templateMc"
- @change="selectTemplateChange" />
- </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.studyFormApply.sfbl')" prop="sfbl">
- <el-select v-model="form.sfbl" :placeholder="$t('form.placeholderSelect')" style="width: 100%;">
- <el-option :label="$t('page.business.study.studyFormApply.yes')" value="是" />
- <el-option :label="$t('page.business.study.studyFormApply.no')" value="否" />
- </el-select>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="24">
- <el-form-item :label="$t('page.business.study.studyFormApply.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-if="showIndex == 2">
- <TemplateTable ref="templateTable" emitName="onApplyCallback" @onApplyCallback="onApplyCallback"
- :sn="form.templateSn" :templateData="form" fillType="actFill" />
- </div>
- </div>
- </div>
- <el-dialog :title="$t('page.business.study.studyFormApply.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" v-if="openSubmit">
- <div class="sbzdtcma"> <input type="text"> <input type="password"> </div>
- <el-row>
- <el-col :span="24">
- <el-form-item :label="$t('form.qmyy')" prop="qmyy">
- <el-input type="text" :value="form.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="form.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="form.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="tj">{{ $t('form.confirm') }}</el-button>
- <el-button @click="openSubmit = false">{{ $t('form.cancel') }}</el-button>
- </div>
- </el-dialog>
- </div>
- </template>
-
- <script>
- import { studyFormApply_bc,studyFormApply_bcOnly, studyFormApply_tj, studyFormApply_info, studyFormApply_updateBdnr ,studyFormApply_updateFhyjjl } from "@/api/business/study/studyFormApply"
- 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';
- import { deepClone, caesarDecipher } from "@/utils/index";
-
- 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'
- }],
-
- },
- templateData: {}
- }
- },
- computed: {
- ...mapGetters([
- 'nickName', 'name'
- ]),
- },
- created() {
- },
- methods: {
- onApplyCallback(data) {
- console.log("data:" + JSON.stringify(data))
- console.log("formdata:" + JSON.stringify(this.$refs.templateTable.getFilledFormData()))
- if (data.type == 'fieldChanged') {
- studyFormApply_updateBdnr(
- {
- id: this.form.id,
- bdnr: JSON.stringify(this.$refs.templateTable.getFilledFormData()),
- zdxgjl: JSON.stringify(data.resourceList),
- filedValue: JSON.stringify(data.newRecord)
- }
- ).then(response => {
- })
- }
- else if (data.type == 'reply') {
- studyFormApply_updateFhyjjl(
- {
- id: this.form.id,
- reply: JSON.stringify(data.newRecord),
- fhyjjl: JSON.stringify(data.resourceList)
- }
- ).then(response => {
- })
- }
- },
- pre() {
- this.showIndex = 1
- },
- next() {
- this.$refs["form"].validate(valid => {
- if (valid) {
- this.$modal.loading()
- studyFormApply_bcOnly(this.form).then(response => {
- this.form = response.data
- this.templateData = deepClone(this.form)
- this.showIndex = 2
- this.$modal.closeLoading()
- }).finally(() => {
- this.$modal.closeLoading()
- })
- }
- })
- },
- selectTemplateChange(val) {
- this.form.bdmc = val.name
- this.form.bdnr = val.content
- this.form.templateMc = val.name
- this.form.templateSn = val.sn
- this.templateData = deepClone(this.form)
- },
- cancel() {
- this.$emit('close')
- this.open = false
- },
- reset() {
- this.form = {
- id: null,
- studyId: null,
- bdbh: null,
- bdmc: '麻醉/精神药品配制/领取申请单',
- bdsm: null,
- templateId: 2,
- templateMc: '麻醉/精神药品配制/领取申请单',
- templateSn: 'MJYLQSQD',
- bdnr: null,
- fzrsh: null,
- shryId: null,
- sfbl: null,
- qmyy: this.$t('page.business.study.studyFormApply.cjjl'),
- shryMc: null,
- }
- this.resetForm("form")
- },
- selectDeptUserChange(val) {
- this.form.shryMc = val.name
- },
- edit(row) {
- this.reset()
- if (row && row.id) {
- this.showIndex = 2
- this.$modal.loading()
- studyFormApply_info({ id: row.id }).then(response => {
- this.form = _.merge({}, this.form, response.data)
- this.templateData = deepClone(this.form)
- this.open = true
- }).finally(() => {
- this.$modal.closeLoading()
- })
- } else {
- this.showIndex = 1
- this.form = _.merge({}, this.form, row)
- this.templateData = deepClone(this.form)
- this.open = true
- }
- },
- save() {
- this.$refs["form"].validate(valid => {
- if (valid) {
- this.$modal.loading()
- studyFormApply_bc(this.form).then(response => {
- this.$emit('close')
- this.open = false
- }).finally(() => {
- this.$modal.closeLoading()
- })
- }
- })
- },
- async showtijjiao() {
- let content = await this.$refs.templateTable.getFormData()
- if (content) {
- this.form.bdnr = JSON.stringify(content)
- this.openSubmit = true
- }
- },
- async saveNext() {
- let content = await this.$refs.templateTable.getFormData()
- if (content) {
- this.form.bdnr = JSON.stringify(content)
- this.$modal.loading()
- studyFormApply_bc(this.form).then(response => {
- this.$emit('close')
- this.open = false
- }).finally(() => {
- this.$modal.closeLoading()
- })
- }
- },
- tj() {
- this.$refs["formSubmit"].validate(valid => {
- if (valid) {
- this.$modal.loading()
- studyFormApply_tj(this.form).then(response => {
- this.$emit('close')
- this.openSubmit = false
- this.open = false
- }).finally(() => {
- this.$modal.closeLoading()
- })
- }
- })
- }
- }
- }
- </script>
|