luojie 2 months ago
parent
commit
c7f96dcd63
20 changed files with 145 additions and 38 deletions
  1. +6
    -2
      src/views/business/comps/select/SelectTemplate.vue
  2. +1
    -0
      src/views/business/comps/select/SelectTemplateDialog.vue
  3. +10
    -0
      src/views/business/form/drug/comp/tbbdList.vue
  4. +10
    -0
      src/views/business/form/nonTrial/comp/tbbdList.vue
  5. +2
    -1
      src/views/business/study/comp/jhbd/Fh.vue
  6. +2
    -1
      src/views/business/study/comp/jhbd/Xq.vue
  7. +2
    -1
      src/views/business/study/comp/sqbd/Fh.vue
  8. +2
    -1
      src/views/business/study/comp/sqbd/Sy.vue
  9. +2
    -1
      src/views/business/study/comp/sqbd/Xq.vue
  10. +5
    -2
      src/views/business/study/comp/suject.vue
  11. +5
    -3
      src/views/business/study/comp/tbbd.vue
  12. +53
    -15
      src/views/business/study/comp/tbbd/Bj.vue
  13. +2
    -1
      src/views/business/study/comp/tbbd/Fh.vue
  14. +2
    -1
      src/views/business/study/comp/tbbd/Sy.vue
  15. +2
    -1
      src/views/business/study/comp/tbbd/Xq.vue
  16. +20
    -1
      src/views/business/study/comp/tbbdList.vue
  17. +5
    -3
      src/views/business/study/comp/ytbd.vue
  18. +3
    -1
      src/views/business/study/comp/ytbd/Bj.vue
  19. +2
    -1
      src/views/business/study/comp/ytbd/Xq.vue
  20. +9
    -2
      src/views/business/study/comp/ytbdList.vue

+ 6
- 2
src/views/business/comps/select/SelectTemplate.vue View File

@ -37,6 +37,10 @@ export default {
type: Number, type: Number,
default: null default: null
}, },
selectedDeptId: {
type: Number,
default: null
},
}, },
watch: { watch: {
value: { value: {
@ -50,7 +54,7 @@ export default {
handler(v) { handler(v) {
this.selected.name=v || '' this.selected.name=v || ''
} }
},
}
}, },
data() { data() {
return { return {
@ -65,7 +69,7 @@ export default {
methods: { methods: {
showSelectTemplate(){ showSelectTemplate(){
if(!this.disabled){ if(!this.disabled){
this.$refs.selectTemplateDialog.show({needPre:this.needPre,studyType:this.studyType,studyFormType:this.studyFormType})
this.$refs.selectTemplateDialog.show({needPre:this.needPre,studyType:this.studyType,studyFormType:this.studyFormType,selectedDeptId:this.selectedDeptId})
} }
}, },
handleChange(obj) { handleChange(obj) {

+ 1
- 0
src/views/business/comps/select/SelectTemplateDialog.vue View File

@ -81,6 +81,7 @@ export default {
this.selectedId = row.id this.selectedId = row.id
}, },
show(val) { show(val) {
this.searchForm.deptId=val.selectedDeptId
this.searchForm = _.merge({}, this.searchForm, val) this.searchForm = _.merge({}, this.searchForm, val)
this.selectedId = null this.selectedId = null
this.search() this.search()

+ 10
- 0
src/views/business/form/drug/comp/tbbdList.vue View File

@ -188,6 +188,7 @@ import SelectDeptUserDialog from '@/views/business/comps/select/SelectDeptUserDi
import { caesarCipher } from "@/utils/index"; import { caesarCipher } from "@/utils/index";
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import moment from "moment"; import moment from "moment";
import { EventBus } from "@/utils/eventBus";
export default { export default {
name: 'YtbdList', name: 'YtbdList',
props: { props: {
@ -251,6 +252,15 @@ export default {
} }
}, },
created() { this.getIsQa() }, created() { this.getIsQa() },
mounted() {
EventBus.$on('onRefreshDrugTbbdList',(data) => {
this.getList()
});
},
beforeDestroy() {
//
EventBus.$off('onRefreshDrugTbbdList');
},
methods: { methods: {
checkPermi, checkPermi,
checkRole, checkRole,

+ 10
- 0
src/views/business/form/nonTrial/comp/tbbdList.vue View File

@ -195,6 +195,7 @@ import SelectDeptUserDialog from '@/views/business/comps/select/SelectDeptUserDi
import { caesarCipher } from "@/utils/index"; import { caesarCipher } from "@/utils/index";
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import moment from "moment"; import moment from "moment";
import { EventBus } from "@/utils/eventBus";
export default { export default {
name: 'YtbdList', name: 'YtbdList',
props: { props: {
@ -259,6 +260,15 @@ export default {
} }
}, },
created() { this.getIsQa() }, created() { this.getIsQa() },
mounted() {
EventBus.$on('onRefreshNonTrialTbbdList',(data) => {
this.getList()
});
},
beforeDestroy() {
//
EventBus.$off('onRefreshNonTrialTbbdList');
},
methods: { methods: {
checkPermi, checkPermi,
checkRole, checkRole,

+ 2
- 1
src/views/business/study/comp/jhbd/Fh.vue View File

@ -49,7 +49,8 @@
<JcgjList ref="jcgjList" @handleQuery="getJjcgjList" /> <JcgjList ref="jcgjList" @handleQuery="getJjcgjList" />
<pagination v-show="jcgjTotal > 0" small layout="prev, pager, next" :total="jcgjTotal" <pagination v-show="jcgjTotal > 0" small layout="prev, pager, next" :total="jcgjTotal"
@pagination="getJjcgjList" />
@pagination="getJjcgjList" :page.sync="queryParamsJcgj.pageNum"
:limit.sync="queryParamsJcgj.pageSize"/>
</div> </div>
</div> </div>
</div> </div>

+ 2
- 1
src/views/business/study/comp/jhbd/Xq.vue View File

@ -94,7 +94,8 @@
<div class="subtitle"> {{ $t('page.business.study.studyFormPlan.jcgj') }}</div> <div class="subtitle"> {{ $t('page.business.study.studyFormPlan.jcgj') }}</div>
</div> </div>
<JcgjList ref="jcgjList" @handleQuery="getJjcgjList" :showXg="true" /> <JcgjList ref="jcgjList" @handleQuery="getJjcgjList" :showXg="true" />
<pagination v small layout="prev, pager, next" :total="jcgjTotal" @pagination="getJjcgjList" />
<pagination v small layout="prev, pager, next" :page.sync="queryParamsJcgj.pageNum"
:limit.sync="queryParamsJcgj.pageSize" :total="jcgjTotal" @pagination="getJjcgjList" />
</div> </div>
</div> </div>
</div> </div>

+ 2
- 1
src/views/business/study/comp/sqbd/Fh.vue View File

@ -49,7 +49,8 @@
<JcgjList ref="jcgjList" @handleQuery="getJjcgjList" /> <JcgjList ref="jcgjList" @handleQuery="getJjcgjList" />
<pagination v-show="jcgjTotal > 0" small layout="prev, pager, next" :total="jcgjTotal" <pagination v-show="jcgjTotal > 0" small layout="prev, pager, next" :total="jcgjTotal"
@pagination="getJjcgjList" />
@pagination="getJjcgjList" :page.sync="queryParamsJcgj.pageNum"
:limit.sync="queryParamsJcgj.pageSize"/>
</div> </div>
</div> </div>
</div> </div>

+ 2
- 1
src/views/business/study/comp/sqbd/Sy.vue View File

@ -46,7 +46,8 @@
<JcgjList ref="jcgjList" @handleQuery="getJjcgjList" :showXg="true" /> <JcgjList ref="jcgjList" @handleQuery="getJjcgjList" :showXg="true" />
<pagination v-show="jcgjTotal > 0" small layout="prev, pager, next" :total="jcgjTotal" <pagination v-show="jcgjTotal > 0" small layout="prev, pager, next" :total="jcgjTotal"
@pagination="getJjcgjList" />
@pagination="getJjcgjList" :page.sync="queryParamsJcgj.pageNum"
:limit.sync="queryParamsJcgj.pageSize"/>
</div> </div>
</div> </div>
</div> </div>

+ 2
- 1
src/views/business/study/comp/sqbd/Xq.vue View File

@ -94,7 +94,8 @@
<div class="subtitle"> {{ $t('page.business.study.studyFormApply.jcgj') }}</div> <div class="subtitle"> {{ $t('page.business.study.studyFormApply.jcgj') }}</div>
</div> </div>
<JcgjList ref="jcgjList" @handleQuery="getJjcgjList" :showXg="true" /> <JcgjList ref="jcgjList" @handleQuery="getJjcgjList" :showXg="true" />
<pagination v small layout="prev, pager, next" :total="jcgjTotal" @pagination="getJjcgjList" />
<pagination v small layout="prev, pager, next" :page.sync="queryParamsJcgj.pageNum"
:limit.sync="queryParamsJcgj.pageSize" :total="jcgjTotal" @pagination="getJjcgjList" />
</div> </div>
</div> </div>
</div> </div>

+ 5
- 2
src/views/business/study/comp/suject.vue View File

@ -131,26 +131,29 @@ export default {
getList(){ getList(){
if(this.study.id){ if(this.study.id){
this.selectedSubjectId = '' this.selectedSubjectId = ''
let selectedDeptId = ''
studySubject_listByStudyId({studyId:this.study.id}).then(response => { studySubject_listByStudyId({studyId:this.study.id}).then(response => {
this.subjectList = response.data; this.subjectList = response.data;
for(let i=0;i<this.subjectList.length;i++){ for(let i=0;i<this.subjectList.length;i++){
let item = this.subjectList[i] let item = this.subjectList[i]
if(item.leader==this.userId || (item.userIdList && item.userIdList.length>0 && item.userIdList.indexOf(this.userId)>-1)){ if(item.leader==this.userId || (item.userIdList && item.userIdList.length>0 && item.userIdList.indexOf(this.userId)>-1)){
this.selectedSubjectId = item.id this.selectedSubjectId = item.id
selectedDeptId = item.deptId
break break
} }
} }
if(this.selectedSubjectId === ''){ if(this.selectedSubjectId === ''){
this.selectedSubjectId = this.subjectList.length>0?this.subjectList[0].id:'' this.selectedSubjectId = this.subjectList.length>0?this.subjectList[0].id:''
selectedDeptId = this.subjectList.length>0?this.subjectList[0].deptId:''
} }
this.$emit('change',this.selectedSubjectId)
this.$emit('change',this.selectedSubjectId,selectedDeptId)
}) })
} }
}, },
changeSelectedSubject(item){ changeSelectedSubject(item){
this.selectedSubjectId = item.id this.selectedSubjectId = item.id
this.$emit('change',this.selectedSubjectId)
this.$emit('change',this.selectedSubjectId,item.deptId)
}, },
editSubject(){ editSubject(){
this.infoDialog.list = [] this.infoDialog.list = []

+ 5
- 3
src/views/business/study/comp/tbbd.vue View File

@ -4,7 +4,7 @@
<sbject :study="study" @change="changeSubject" /> <sbject :study="study" @change="changeSubject" />
</div> </div>
<div class="tbbd-right" v-if="studyInfo.studySubjectId!='' && studyInfo.studySubjectId!=undefined"> <div class="tbbd-right" v-if="studyInfo.studySubjectId!='' && studyInfo.studySubjectId!=undefined">
<tbbdList :study="studyInfo" @showDetail="showDetailCallback" @changeTab="changeTab"/>
<tbbdList :study="studyInfo" :selectedDeptId="selectedDeptId" @showDetail="showDetailCallback" @changeTab="changeTab"/>
</div> </div>
</div> </div>
</template> </template>
@ -39,13 +39,15 @@ export default {
showDetail:false, showDetail:false,
studyInfo:{ studyInfo:{
studySubjectId:'' studySubjectId:''
}
},
selectedDeptId:''
} }
}, },
created() {}, created() {},
methods: { methods: {
changeSubject(val){
changeSubject(val,deptId){
this.studyInfo.studySubjectId = val this.studyInfo.studySubjectId = val
this.selectedDeptId = deptId || ''
}, },
showDetailCallback(val){ showDetailCallback(val){
this.showDetail=val this.showDetail=val

+ 53
- 15
src/views/business/study/comp/tbbd/Bj.vue View File

@ -46,7 +46,7 @@
<el-form-item :label="bdmbTitle" prop="templateId"> <el-form-item :label="bdmbTitle" prop="templateId">
<SelectTemplate v-model="form.templateId" :disabled="form.id && form.id !== ''" <SelectTemplate v-model="form.templateId" :disabled="form.id && form.id !== ''"
:name="form.templateMc" :studyType="studyType" :studyFormType="studyFormType" :name="form.templateMc" :studyType="studyType" :studyFormType="studyFormType"
@change="selectTemplateChange" :needPre="1" />
@change="selectTemplateChange" :needPre="1" :selectedDeptId="selectedDeptId"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -139,16 +139,18 @@
<div style="display: flex;justify-content: space-between;"> <div style="display: flex;justify-content: space-between;">
<div style="display: flex;"> <div style="display: flex;">
<div style="display: flex;"> <div style="display: flex;">
<div> 存储条件</div>
<div> 存储位置</div>
<div> <div>
<BusinessSelect v-model="citem.cctj" dictType="business_cctj" style="width: 200px;">
</BusinessSelect>
<el-select v-model="citem.ccwz" :placeholder="$t('form.placeholderSelect')"
@change="ccwzChange(cindex)" filterable>
<el-option v-for="item in ccwzlist" :key="item.id" :label="item.bh" :value="item.id" />
</el-select>
</div> </div>
</div> </div>
<div style="display: flex; margin-left: 10px;"> <div style="display: flex; margin-left: 10px;">
<div> 存储位置</div>
<div> 存储条件</div>
<div> <div>
<BusinessSelect v-model="citem.ccwz" dictType="business_ccwz" style="width: 200px;">
<BusinessSelect v-model="citem.cctj" dictType="business_cctj" style="width: 200px;">
</BusinessSelect> </BusinessSelect>
</div> </div>
</div> </div>
@ -171,7 +173,7 @@
<el-form-item> <el-form-item>
<div>{{ $t('page.business.study.studyFormFill.yltj') }}</div> <div>{{ $t('page.business.study.studyFormFill.yltj') }}</div>
<div style=" display: flex; flex-wrap: wrap; gap: 16px;"> <div style=" display: flex; flex-wrap: wrap; gap: 16px;">
<div v-for="(item, index) in resource" :key="'r' + index" style=" flex: 0 0 calc(33.333% - 11px);">
<div v-for="(item, index) in resource" :key="'r' + index" style=" flex: 0 0 calc(50% - 11px);">
{{ item.bh }} {{ item.bh }}
<el-input type="number" v-model="item.syl" maxlength="50" style="width:150px;"> <el-input type="number" v-model="item.syl" maxlength="50" style="width:150px;">
<template slot="append"> <template slot="append">
@ -248,8 +250,10 @@
<div style="display: flex;"> <div style="display: flex;">
<div> 存储位置</div> <div> 存储位置</div>
<div> <div>
<BusinessSelect v-model="citem.ccwz" dictType="business_ccwz" style="width: 200px;">
</BusinessSelect>
<el-select v-model="citem.ccwz" :placeholder="$t('form.placeholderSelect')"
@change="ccwzYjChange(cindex)" filterable>
<el-option v-for="item in ccwzlist" :key="item.id" :label="item.bh" :value="item.id" />
</el-select>
</div> </div>
</div> </div>
<div style="display: flex; margin-left: 10px;"> <div style="display: flex; margin-left: 10px;">
@ -365,6 +369,7 @@
</template> </template>
<script> <script>
import { listData } from "@/api/system/dict/data"
import { studyFormFill_bc, studyFormFill_yjccFilter, studyFormFill_yjcc, studyFormFill_bcOnly, studyFormFill_updateBdnr, studyFormFill_tj, studyFormFill_info, studyFormFill_updateFhyjjl } from "@/api/business/study/studyFormFill" import { studyFormFill_bc, studyFormFill_yjccFilter, studyFormFill_yjcc, studyFormFill_bcOnly, studyFormFill_updateBdnr, studyFormFill_tj, studyFormFill_info, studyFormFill_updateFhyjjl } from "@/api/business/study/studyFormFill"
import { study_info } from "@/api/business/study/study" import { study_info } from "@/api/business/study/study"
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
@ -373,6 +378,7 @@ import SelectDeptUser from '@/views/business/comps/select/SelectDeptUser';
import TemplateTable from '@/views/business/comps/template/TemplateTable'; import TemplateTable from '@/views/business/comps/template/TemplateTable';
import BusinessSelect from '@/views/business/comps/select/BusinessSelect'; import BusinessSelect from '@/views/business/comps/select/BusinessSelect';
import { deepClone, caesarDecipher } from "@/utils/index"; import { deepClone, caesarDecipher } from "@/utils/index";
import { EventBus } from "@/utils/eventBus";
export default { export default {
name: "Bj", name: "Bj",
@ -417,7 +423,7 @@ export default {
bdnr: '', bdnr: '',
resource: '', resource: '',
yqResource: '', yqResource: '',
jcbList:'',
jcbList: '',
qmrmm: '', qmrmm: '',
sfcz: false, sfcz: false,
czfs: '', czfs: '',
@ -446,7 +452,7 @@ export default {
resourceYj: [], resourceYj: [],
resource: [], resource: [],
yqResource: [], yqResource: [],
jcbList:[],
jcbList: [],
bdmbTitle: this.$t('page.business.form.bdmb'), bdmbTitle: this.$t('page.business.form.bdmb'),
rulesApprove: { rulesApprove: {
qmrmm: [{ qmrmm: [{
@ -471,7 +477,9 @@ export default {
}, },
templateData: {}, templateData: {},
studyType: null, studyType: null,
studyFormType: null
studyFormType: null,
ccwzlist: [],
selectedDeptId:null,
} }
}, },
computed: { computed: {
@ -481,11 +489,32 @@ export default {
}, },
created() { created() {
this.getInfo() this.getInfo()
this.getCcwz()
}, },
methods: { methods: {
yjccCcwzChange(cindex,val){
debugger
this.cclistYj[cindex].cctj=val.wc
getCcwz() {
listData({
pageNum: 1,
pageSize: 999999,
dictType: 'business_ccwz',
status: 0
}).then(response => {
this.ccwzlist = response.rows
})
},
ccwzChange(cindex) {
let that = this
let _index = _.findIndex(this.ccwzlist, function (item) {
return item.id == that.cclist[cindex].ccwz
})
that.cclist[cindex].cctj = that.ccwzlist[_index].wc
},
ccwzYjChange(cindex) {
let that = this
let _index = _.findIndex(this.ccwzlist, function (item) {
return item.id == that.cclistYj[cindex].ccwz
})
that.cclistYj[cindex].cctj = that.ccwzlist[_index].wc
}, },
onFillCallback(data) { onFillCallback(data) {
console.log("data:" + JSON.stringify(data)) console.log("data:" + JSON.stringify(data))
@ -548,6 +577,7 @@ export default {
params = JSON.parse(caesarDecipher(this.$route.params.key)) params = JSON.parse(caesarDecipher(this.$route.params.key))
this.studyType = params.studyType || null this.studyType = params.studyType || null
this.studyFormType = params.studyFormType || null this.studyFormType = params.studyFormType || null
this.selectedDeptId = params.selectedDeptId || null
} catch (e) { } catch (e) {
console.log('参数错误') console.log('参数错误')
} }
@ -745,6 +775,14 @@ export default {
}, },
cancelSave() { cancelSave() {
try { try {
// 1510
if (this.form.studyType == 1) {
EventBus.$emit('onRefreshStudyTbbdList', {});
} else if (this.form.studyType == 5) {
EventBus.$emit('onRefreshNonTrialTbbdList', {});
} else if (this.form.studyType == 10) {
EventBus.$emit('onRefreshDrugTbbdList', {});
}
let key = caesarDecipher(this.$route.params.key) let key = caesarDecipher(this.$route.params.key)
let data = JSON.parse(key) let data = JSON.parse(key)
if (data && data != undefined && data != '') { if (data && data != undefined && data != '') {

+ 2
- 1
src/views/business/study/comp/tbbd/Fh.vue View File

@ -51,7 +51,8 @@
<JcgjList ref="jcgjList" @handleQuery="getJjcgjList" :showXg="true"/> <JcgjList ref="jcgjList" @handleQuery="getJjcgjList" :showXg="true"/>
<pagination v-show="jcgjTotal > 0" small layout="prev, pager, next" :total="jcgjTotal" <pagination v-show="jcgjTotal > 0" small layout="prev, pager, next" :total="jcgjTotal"
@pagination="getJjcgjList" />
@pagination="getJjcgjList" :page.sync="queryParamsJcgj.pageNum"
:limit.sync="queryParamsJcgj.pageSize"/>
</div> </div>
</div> </div>
</div> </div>

+ 2
- 1
src/views/business/study/comp/tbbd/Sy.vue View File

@ -46,7 +46,8 @@
<JcgjList ref="jcgjList" @handleQuery="getJjcgjList" :showXg="true" /> <JcgjList ref="jcgjList" @handleQuery="getJjcgjList" :showXg="true" />
<pagination v-show="jcgjTotal > 0" small layout="prev, pager, next" :total="jcgjTotal" <pagination v-show="jcgjTotal > 0" small layout="prev, pager, next" :total="jcgjTotal"
@pagination="getJjcgjList" />
@pagination="getJjcgjList" :page.sync="queryParamsJcgj.pageNum"
:limit.sync="queryParamsJcgj.pageSize"/>
</div> </div>
</div> </div>
</div> </div>

+ 2
- 1
src/views/business/study/comp/tbbd/Xq.vue View File

@ -94,7 +94,8 @@
<div class="subtitle"> {{ $t('page.business.study.studyFormFill.jcgj') }}</div> <div class="subtitle"> {{ $t('page.business.study.studyFormFill.jcgj') }}</div>
</div> </div>
<JcgjList ref="jcgjList" @handleQuery="getJjcgjList" :showXg="true" /> <JcgjList ref="jcgjList" @handleQuery="getJjcgjList" :showXg="true" />
<pagination v small layout="prev, pager, next" :total="jcgjTotal" @pagination="getJjcgjList" />
<pagination v small layout="prev, pager, next" :page.sync="queryParamsJcgj.pageNum"
:limit.sync="queryParamsJcgj.pageSize" :total="jcgjTotal" @pagination="getJjcgjList" />
</div> </div>
</div> </div>
</div> </div>

+ 20
- 1
src/views/business/study/comp/tbbdList.vue View File

@ -193,6 +193,8 @@ import SelectDeptUserDialog from '@/views/business/comps/select/SelectDeptUserDi
import { caesarCipher } from "@/utils/index"; import { caesarCipher } from "@/utils/index";
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import moment from "moment"; import moment from "moment";
import { EventBus } from "@/utils/eventBus";
export default { export default {
name: 'YtbdList', name: 'YtbdList',
props: { props: {
@ -201,7 +203,13 @@ export default {
default: () => { default: () => {
return {} return {}
} }
}
},
selectedDeptId:{
type:[Number,String],
default:()=>{
return null
}
},
}, },
computed: { computed: {
...mapGetters([ ...mapGetters([
@ -223,6 +231,15 @@ export default {
deep: true deep: true
} }
}, },
mounted() {
EventBus.$on('onRefreshStudyTbbdList',(data) => {
this.getList()
});
},
beforeDestroy() {
//
EventBus.$off('onRefreshStudyTbbdList');
},
components: { Ghgsr, Fh, Fz, Bj, Xq, Qrfz, Sy, Jq, Gc, SelectDeptUser, SelectDeptUserDialog }, components: { Ghgsr, Fh, Fz, Bj, Xq, Qrfz, Sy, Jq, Gc, SelectDeptUser, SelectDeptUserDialog },
data() { data() {
return { return {
@ -415,6 +432,7 @@ export default {
studyId: this.searchForm.studyId, studyId: this.searchForm.studyId,
studyType: 1, studyType: 1,
studyFormType:5, studyFormType:5,
selectedDeptId:this.selectedDeptId,
id: null id: null
})) }))
this.$tab.openPage(this.$t('page.business.study.studyFormFill.xzbd'), '/study/formFillBj/' + params) this.$tab.openPage(this.$t('page.business.study.studyFormFill.xzbd'), '/study/formFillBj/' + params)
@ -437,6 +455,7 @@ export default {
studyId: this.searchForm.studyId, studyId: this.searchForm.studyId,
studyType: 1, studyType: 1,
studyFormType:5, studyFormType:5,
selectedDeptId:this.selectedDeptId,
formId: row.id formId: row.id
})) }))
this.$tab.openPage(row.bdmc, '/study/formFillBj/' + params) this.$tab.openPage(row.bdmc, '/study/formFillBj/' + params)

+ 5
- 3
src/views/business/study/comp/ytbd.vue View File

@ -4,7 +4,7 @@
<sbject :study="study" :operate="true" @change="changeSubject" /> <sbject :study="study" :operate="true" @change="changeSubject" />
</div> </div>
<div class="ytbd-right" v-if="studyInfo.studySubjectId!='' && studyInfo.studySubjectId!=undefined"> <div class="ytbd-right" v-if="studyInfo.studySubjectId!='' && studyInfo.studySubjectId!=undefined">
<ytbdList :study="studyInfo" @showDetail="showDetailCallback" @changeTab="changeTab"/>
<ytbdList :study="studyInfo" :selectedDeptId="selectedDeptId" @showDetail="showDetailCallback" @changeTab="changeTab"/>
</div> </div>
</div> </div>
</template> </template>
@ -39,13 +39,15 @@ export default {
showDetail:false, showDetail:false,
studyInfo:{ studyInfo:{
studySubjectId:'' studySubjectId:''
}
},
selectedDeptId:''
} }
}, },
created() {}, created() {},
methods: { methods: {
changeSubject(val){
changeSubject(val,deptId){
this.studyInfo.studySubjectId = val this.studyInfo.studySubjectId = val
this.selectedDeptId = deptId || ''
}, },
showDetailCallback(val){ showDetailCallback(val){
this.showDetail=val this.showDetail=val

+ 3
- 1
src/views/business/study/comp/ytbd/Bj.vue View File

@ -42,7 +42,7 @@
<el-col :span="24"> <el-col :span="24">
<el-form-item :label="$t('page.business.form.bdmb')" prop="templateId"> <el-form-item :label="$t('page.business.form.bdmb')" prop="templateId">
<SelectTemplate v-model="form.templateId" :disabled="form.id && form.id !== ''" :needPre="10" <SelectTemplate v-model="form.templateId" :disabled="form.id && form.id !== ''" :needPre="10"
:name="form.templateMc" :studyType="studyType" :studyFormType="studyFormType" @change="selectTemplateChange" />
:name="form.templateMc" :studyType="studyType" :selectedDeptId="selectedDeptId" :studyFormType="studyFormType" @change="selectTemplateChange" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -155,6 +155,7 @@ export default {
open: false, open: false,
openSubmit: false, openSubmit: false,
permitForSecectUser: '', permitForSecectUser: '',
selectedDeptId:null,
rulesApprove: { rulesApprove: {
qmrmm: [{ qmrmm: [{
required: true, required: true,
@ -267,6 +268,7 @@ export default {
this.permitForSecectUser = row.permitForSecectUser this.permitForSecectUser = row.permitForSecectUser
this.studyType = row.studyType||null this.studyType = row.studyType||null
this.studyFormType = row.studyFormType||null this.studyFormType = row.studyFormType||null
this.selectedDeptId=row.selectedDeptId||null
if (row && row.id) { if (row && row.id) {
this.showIndex = 2 this.showIndex = 2
this.$modal.loading() this.$modal.loading()

+ 2
- 1
src/views/business/study/comp/ytbd/Xq.vue View File

@ -48,7 +48,8 @@
<JcgjList ref="jcgjList" @handleQuery="getJjcgjList" :showBj="false" :showXg="true" /> <JcgjList ref="jcgjList" @handleQuery="getJjcgjList" :showBj="false" :showXg="true" />
<pagination v-show="jcgjTotal > 0" small layout="prev, pager, next" :total="jcgjTotal" <pagination v-show="jcgjTotal > 0" small layout="prev, pager, next" :total="jcgjTotal"
@pagination="getJjcgjList" />
@pagination="getJjcgjList" :page.sync="queryParamsJcgj.pageNum"
:limit.sync="queryParamsJcgj.pageSize"/>
</div> </div>
</div> </div>
</div> </div>

+ 9
- 2
src/views/business/study/comp/ytbdList.vue View File

@ -215,7 +215,13 @@ export default {
default: () => { default: () => {
return {} return {}
} }
}
},
selectedDeptId:{
type:[Number,String],
default:()=>{
return null
}
},
}, },
computed: { computed: {
...mapGetters([ ...mapGetters([
@ -439,6 +445,7 @@ export default {
studySn: this.searchForm.studySn, studySn: this.searchForm.studySn,
studyMc: this.searchForm.studyMc, studyMc: this.searchForm.studyMc,
studyId: this.searchForm.studyId, studyId: this.searchForm.studyId,
selectedDeptId:this.selectedDeptId,
studyType: 1, studyType: 1,
studySubjectId: this.searchForm.studySubjectId, studySubjectId: this.searchForm.studySubjectId,
permitForSecectUser: 'business:studyFormPre:sh' permitForSecectUser: 'business:studyFormPre:sh'
@ -446,7 +453,7 @@ export default {
}, },
edit(row) { edit(row) {
this.$modal.loading() this.$modal.loading()
studyMethod_getReadAllMethodStatus({ userId: this.id, studyId: this.searchForm.studyId, studySubjectId: this.searchForm.studySubjectId }).then(response => {
studyMethod_getReadAllMethodStatus({ selectedDeptId:this.selectedDeptId,userId: this.id, studyId: this.searchForm.studyId, studySubjectId: this.searchForm.studySubjectId }).then(response => {
if (response.data.toUrl) { if (response.data.toUrl) {
this.toRead(response.data) this.toRead(response.data)
} else { } else {

Loading…
Cancel
Save