luojie 2 months ago
parent
commit
4128624390
27 changed files with 496 additions and 39 deletions
  1. +2
    -0
      src/components/Template/CustomTable.vue
  2. +5
    -0
      src/lang/en/business/resource/gsp.js
  3. +2
    -1
      src/lang/en/template/ada.js
  4. +6
    -1
      src/lang/en/template/lba.js
  5. +4
    -0
      src/lang/zh/business/resource/gsp.js
  6. +2
    -1
      src/lang/zh/template/ada.js
  7. +9
    -0
      src/lang/zh/template/lba copy.js
  8. +6
    -1
      src/lang/zh/template/lba.js
  9. +1
    -0
      src/views/business/archive/gsp/index.vue
  10. +7
    -1
      src/views/business/comps/template/TemplateTable.vue
  11. +257
    -0
      src/views/business/comps/template/comps/lba/LBA002.vue
  12. +1
    -1
      src/views/business/resource/gsp/comps/ffjl/Xq.vue
  13. +1
    -0
      src/views/business/resource/gsp/comps/gsp/Xq.vue
  14. +122
    -0
      src/views/business/resource/gsp/comps/rkjl/RkjlImport.vue
  15. +12
    -1
      src/views/business/resource/gsp/comps/rkjl/Xq.vue
  16. +9
    -2
      src/views/business/resource/gsp/comps/rkjlList.vue
  17. +8
    -6
      src/views/business/resource/gyzj/comps/gyzj/Cc.vue
  18. +5
    -2
      src/views/business/resource/gyzj/comps/gyzj/Rk.vue
  19. +4
    -1
      src/views/business/resource/gyzj/comps/gyzj/Sqrk.vue
  20. +7
    -5
      src/views/business/resource/mjy/comps/mjy/Cc.vue
  21. +17
    -14
      src/views/business/resource/mjy/comps/mjy/Gh.vue
  22. +4
    -1
      src/views/business/resource/mjy/comps/mjy/Rk.vue
  23. +1
    -0
      src/views/business/resource/yq/comps/detail.vue
  24. +1
    -0
      src/views/business/study/comp/syff/Xq.vue
  25. +1
    -0
      src/views/business/study/comp/syj/Detail.vue
  26. +1
    -0
      src/views/business/study/comp/wzlb.vue
  27. +1
    -1
      src/views/business/study/comp/wzlb/mjyList.vue

+ 2
- 0
src/components/Template/CustomTable.vue View File

@ -756,6 +756,8 @@ export default {
color: #606266; color: #606266;
margin-top: 20px; margin-top: 20px;
&.no-border { &.no-border {
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
border-radius: 5px 5px;
border: none; border: none;
.custom-table-cell { .custom-table-cell {
border-right: none; border-right: none;

+ 5
- 0
src/lang/en/business/resource/gsp.js View File

@ -139,4 +139,9 @@ export default {
tyjy:'Approve Check-out', tyjy:'Approve Check-out',
jjjy:'Reject Check-out', jjjy:'Reject Check-out',
qrgh:'Confirm Check-in', qrgh:'Confirm Check-in',
xzmb: '下载模板',
wjgs: '仅允许导入xls、xlsx格式文件',
tzsc: '将文件拖到此处,或',
djsc: '点击上传',
} }

+ 2
- 1
src/lang/en/template/ada.js View File

@ -1,4 +1,5 @@
//ADA //ADA
export default { export default {
ada001: {} //用的SP001
ada001: {}, //用的SP001
ada002: {} //用的LBA001
} }

+ 6
- 1
src/lang/en/template/lba.js View File

@ -1,4 +1,9 @@
//LBA //LBA
export default { export default {
lba001: {} //用的SP001
lba001: {}, //用的SP001
lba002: {
cztj: 'Work Condition',
czsj: 'Work Time',
jcbmc: 'Analysis Plate Name'
}
} }

+ 4
- 0
src/lang/zh/business/resource/gsp.js View File

@ -143,5 +143,9 @@ export default {
tyjy:'同意借阅', tyjy:'同意借阅',
jjjy:'拒绝借阅', jjjy:'拒绝借阅',
qrgh:'确认归还', qrgh:'确认归还',
xzmb: '下载模板',
wjgs: '仅允许导入xls、xlsx格式文件',
tzsc: '将文件拖到此处,或',
djsc: '点击上传',
} }

+ 2
- 1
src/lang/zh/template/ada.js View File

@ -1,4 +1,5 @@
//ADA //ADA
export default { export default {
ada001: {} //用的SP001
ada001: {}, //用的SP001
ada002: {} //用的LBA001
} }

+ 9
- 0
src/lang/zh/template/lba copy.js View File

@ -0,0 +1,9 @@
//LBA
export default {
lba001: {}, //用的SP001
lba002: {
cztj: '操作条件',
czsj: '操作时间',
jcbmc: '检测板名称'
}
}

+ 6
- 1
src/lang/zh/template/lba.js View File

@ -1,4 +1,9 @@
//LBA //LBA
export default { export default {
lba001: {} //用的SP001
lba001: {}, //用的SP001
lba002: {
cztj: '操作条件',
czsj: '操作时间',
jcbmc: '检测板名称'
}
} }

+ 1
- 0
src/views/business/archive/gsp/index.vue View File

@ -43,6 +43,7 @@ export default {
changeTab(item) { changeTab(item) {
if (this.active !== item.key) { if (this.active !== item.key) {
this.active = item.key this.active = item.key
this.saveSimpleLog({name:this.$t(item.name,'zh_CN'),nameEn:this.$t(item.name,'en_US'),jcmc:this.$t('system.enterPage','zh_CN'),jcmcEn:this.$t('system.enterPage','en_US')})
} }
}, },
showDetailCallback(val) { showDetailCallback(val) {

+ 7
- 1
src/views/business/comps/template/TemplateTable.vue View File

@ -53,9 +53,11 @@ import PCR002 from "./comps/pcr/PCR002.vue";
//LBA //LBA
// LBA001-使SP001 // LBA001-使SP001
import LBA002 from "./comps/lba/LBA002.vue";
//ADA //ADA
// ADA001-使SP001 // ADA001-使SP001
// ADA002-使LBA002
export default { export default {
name: "TemplateTable", name: "TemplateTable",
@ -68,7 +70,9 @@ export default {
// //
SP001, SP003, SP00456,SP007, SP008, SP009, SP010, SP011, SP012, SP013, SP014, SP015, SP016, SP017, SP018, SP001, SP003, SP00456,SP007, SP008, SP009, SP010, SP011, SP012, SP013, SP014, SP015, SP016, SP017, SP018,
// PCR // PCR
PCR002
PCR002,
// PCR
LBA002
}, },
props: { props: {
sn: { sn: {
@ -122,10 +126,12 @@ export default {
'PCR002': 'PCR002', 'PCR002': 'PCR002',
//LBA //LBA
'LBA001': 'SP001', 'LBA001': 'SP001',
'LBA002': 'LBA002',
// //
'YP001': 'SP001', 'YP001': 'SP001',
//ADA //ADA
'ADA001': 'SP001', 'ADA001': 'SP001',
'ADA002': 'LBA002',
} }
} }
return this.componentMap || "Demo" return this.componentMap || "Demo"

+ 257
- 0
src/views/business/comps/template/comps/lba/LBA002.vue View File

@ -0,0 +1,257 @@
<!-- 配体结合分析溶液配制记录表 -->
<template>
<div>
<div class="detail-container">
<div class="detail-title"><img src="@/assets/images/detail-title.png">{{ formData.bdmc }}<img
src="@/assets/images/detail-title.png" /></div>
<div class="detail-content">
<div class="content">
<BaseInfoFormPackage fieldItemLabel="template.common.baseInfo" label="template.common.baseInfo"
ref="baseInfoRef" :formConfig="baseInfoFormConfig" :formData="formData" />
<TableList label="template.common.reagentInfo" :columns="sysjColumns" :dataSource="resource" />
<TableList label="template.common.instrumentInfo" :columns="yqColumns" :dataSource="yqResource" />
<LineLabel label="template.common.operationSteps" />
<CustomTable
:isBorder="false"
@blur="onHandleTableBlur"
:ref="`tableRef`"
:columns="tableStepColumns"
:formData="formData"
:prefixKey = "`table`"
fieldItemLabel = "template.common.operationSteps"
>
<template slot="operation" slot-scope="{ row, rowIndex, columns }" v-if="fillType!='actFill'">
<TableOpertaionDelete :row="row" :rowIndex="rowIndex" :columns="columns" @deleteRow="deleteRow" ></TableOpertaionDelete>
</template>
</CustomTable>
<Step ref="stepRef" :formData="formData.stepData"></Step>
<BaseInfoFormPackage fieldItemLabel="template.common.remark" label="template.common.remark"
ref="remarkRef" :formConfig="remarkConig" :formData="formData" />
</div>
</div>
</div>
<!-- <button @click="onSave">保存</button> -->
</div>
</template>
<script>
import BaseInfoFormPackage from "@/components/Template/BaseInfoFormPackage";
import LineLabel from "@/components/Template/LineLabel";
import TableList from "@/components/Template/Table";
import Step from "@/components/Template/Step";
import templateMixin from "../../mixins/templateMixin";
import CustomTable from '@/components/Template/CustomTable.vue';
import { EventBus } from "@/utils/eventBus";
import { uniqeResource } from "@/utils/calUnitTools";
import { debounce } from 'lodash-es'
import TableOpertaionDelete from "@/components/Template/operation/TableOpertaionDelete.vue"
export default {
name: "LBA002",
components: { BaseInfoFormPackage, LineLabel, TableList, Step, CustomTable,TableOpertaionDelete },
mixins: [templateMixin],
props: {
fillType: {
type: String,
default: 'preFill',
},
},
computed: {
//
remarkConig() {
return [
{
type: "cellItem",
config: {
remark: {
label: "",
type: "textarea",
fillType: "actFill",
span: 1,
placeholder: 'template.common.remarkPlaceholder',
maxlength: 1000,
rows: 5
}
}
}
]
},
//
baseInfoFormConfig() {
return [
{
type: "cardItem",
config: {
studyMc: {
label: 'template.common.testName',
type: "input",
disabled: true,
},
studySn: {
label: 'template.common.testNumber',
type: "input",
disabled: true,
},
methodCode: {
label: 'template.common.methodCode',
type: "input",
fillType: "preFill",
maxlength: 50
},
versionNum: {
label: 'template.common.versionNumber',
type: "inputNumber",
fillType: "actFill",
prepend: "V",
maxlength: 50
},
}
},
{
type: "conditionItem",
label: 'template.lba.lba002.cztj',
config: {
pre: {
label: 'template.common.preFill',
type: "select",
multiple: true,
fillType: "preFill",
options: this.getDictOptions('business_pztj'),
otherCode: "preOther",
},
act: {
label: 'template.common.actualFill',
type: "select",
fillType: "actFill",
otherCode: "actOther",
multiple: true,
compareTo: "pre",
options: this.getDictOptions('business_pztj')
}
}
},
{
type: "cellItem",
label: 'template.lba.lba002.czsj',
config: {
startDate: {
label: 'template.common.startTime',
type: "input",
},
endDate: {
label: 'template.common.endTime',
type: "input",
},
}
}
]
},
//
tableStepColumns() {
return [{
label: 'template.lba.lba002.jcbmc',
prop: 'mc',
bodyType: 'input',
bodySubType: 'span',
bodySubKey: 'bh',
bodyFillType: 'preFill',
width: 280,
}]
},
},
data() {
return {
formData: {},
};
},
mounted() {
const formData = this.getFormDataByTemplateData();
if(this.fillType === "actFill"){
this.getCode(formData);
}
},
methods: {
//
getCode: debounce(async function (v) {
const {stepTableFormData = []} = v;
if(stepTableFormData && stepTableFormData.length>0 && !stepTableFormData[0].bh){
let postSn = []
for(let i=0;i<stepTableFormData.length;i++){
postSn.push({
pre:stepTableFormData[i].mc,
type:1
})
}
const snList = await this.getLatestSnArr(postSn)
for(let i=0;i<stepTableFormData.length;i++){
this.$refs.tableRef.updateDataSourceByRowIndex(i,{
bh: snList[i],
})
}
const params = {
type: "fieldChanged",
newRecord: null,
resourceList: null,
}
setTimeout(() => {
EventBus.$emit('onModifyRecord', params,)
}, 10);
}
}, 100),
//
getFilledFormData() {
return this.getFilledFormDataByRefs(["baseInfoRef", "tableRef", "stepRef", "remarkRef"])
},
//
async getFormData() {
let content = await this.validFormFields(["baseInfoRef", "tableRef", "stepRef", "remarkRef"]);
return content;
},
getResource() {
let content = this.getFilledFormData();
//resource
let jcbList = []
if (this.fillType === "actFill") {
let tableList = content.stepTableFormData
if(tableList && tableList.length>0){
for(let i=0;i<tableList.length;i++){
//
let item = tableList[i]
console.log('表格item:'+JSON.stringify(item))
jcbList.push({
bh: item.mc+item.bh,
studyId: this.formData.studyId,
studyFillFormId: this.formData.id
})
}
}
}
//使
const stepResource = this.$refs.stepRef.getStepResource()
this.resourceTmp = stepResource.sjResource || []
this.yqResourceTmp = stepResource.yqResource || []
this.jcbListTmp = jcbList
return this.resourceTmp;
},
//
async onSave() {
let content = await this.$refs.stepRef.getFormData();
console.log(content);
},
//
deleteRow(rowIndex) {
const tableRef = this.$refs['tableRef'];
if (tableRef) {
tableRef.deleteRow(rowIndex);
}
},
}
};
</script>
<style rel="stylesheet/scss" lang="scss">
</style>

+ 1
- 1
src/views/business/resource/gsp/comps/ffjl/Xq.vue View File

@ -8,7 +8,7 @@
</div> </div>
<div class="right-top"> <div class="right-top">
<el-button @click="cancel()">{{ $t('form.cancel') }}</el-button> <el-button @click="cancel()">{{ $t('form.cancel') }}</el-button>
<el-button @click="exportExcel()">{{ $t('form.export') }}</el-button>
<!-- <el-button @click="exportExcel()">{{ $t('form.export') }}</el-button> -->
</div> </div>
</div> </div>
<div class="detail-title"><img src="@/assets/images/detail-title.png">{{ $t('page.business.resource.mjy.ffjlxq') <div class="detail-title"><img src="@/assets/images/detail-title.png">{{ $t('page.business.resource.mjy.ffjlxq')

+ 1
- 0
src/views/business/resource/gsp/comps/gsp/Xq.vue View File

@ -161,6 +161,7 @@ export default {
this.$modal.loading() this.$modal.loading()
exportDetail({ id: this.form.id,lang:this.$store.getters.language.split("_")[0] }).then(response => { exportDetail({ id: this.form.id,lang:this.$store.getters.language.split("_")[0] }).then(response => {
window.open(process.env.VUE_APP_FILE_DOMAIN +response.msg) window.open(process.env.VUE_APP_FILE_DOMAIN +response.msg)
this.saveSimpleLog({name:this.form.bh,nameEn:this.form.bh,jcmc:'供试品导出',jcmcEn:'Test Item Export'})
this.$modal.closeLoading() this.$modal.closeLoading()
}).finally(() => { }).finally(() => {
this.$modal.closeLoading() this.$modal.closeLoading()

+ 122
- 0
src/views/business/resource/gsp/comps/rkjl/RkjlImport.vue View File

@ -0,0 +1,122 @@
<template>
<div>
<!-- 解锁弹窗 -->
<el-dialog :title="$t('page.business.resource.gsp.dr')" :visible.sync="open" width="400px" append-to-body
:close-on-click-modal="false">
<el-upload ref="upload" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
:action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
:on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
<i class="el-icon-upload"></i>
<div class="el-upload__text">{{ $t('page.business.resource.gsp.tzsc') }}<em>{{ $t('page.business.resource.gsp.djsc') }}</em></div>
<div class="el-upload__tip text-center" slot="tip">
<span>{{ $t('page.business.resource.gsp.wjgs') }}</span>
<el-link type="primary" :underline="false" style="font-size: 12px; vertical-align: baseline"
@click="importTemplate">{{ $t('page.business.resource.gsp.xzmb') }}</el-link>
</div>
</el-upload>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitFileForm">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { js } from "@/api/business/gsp/gspRkjl"
import { mapGetters } from 'vuex'
import { getToken } from "@/utils/auth"
export default {
name: "Js",
data() {
return {
open: false,
form: {},
rules: {
qmrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
},
upload: {
//
open: false,
//
title: "",
//
isUploading: false,
//
updateSupport: 0,
//
headers: { Authorization: "Bearer " + getToken() },
//
url: process.env.VUE_APP_BASE_API + "/business/gspRkjl/importData"
},
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
//
importTemplate() {
this.download('business/gspRkjl/importTemplate', {
}, `【模板】供试品入库记录.xlsx`)
},
//
handleFileUploadProgress(event, file, fileList) {
this.upload.isUploading = true
},
//
handleFileSuccess(response, file, fileList) {
this.upload.open = false
this.upload.isUploading = false
this.$refs.upload.clearFiles()
this.$alert("<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" + response.msg + "</div>", "导入结果", { dangerouslyUseHTMLString: true })
this.getList()
},
//
submitFileForm() {
const file = this.$refs.upload.uploadFiles
if (!file || file.length === 0 || !file[0].name.toLowerCase().endsWith('.xls') && !file[0].name.toLowerCase().endsWith('.xlsx')) {
this.$modal.msgError("请选择后缀为 “xls”或“xlsx”的文件。")
return
}
this.$refs.upload.submit()
},
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
ids: null,
mc: null,
bh: null,
qmyy: this.$t('page.business.resource.gsp.jsgsprkjl'),
qmrmm: null
}
this.resetForm("form")
},
show() {
this.reset()
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
js(this.form).then(response => {
this.open = false
this.$emit('callback')
})
}
})
}
}
}
</script>

+ 12
- 1
src/views/business/resource/gsp/comps/rkjl/Xq.vue View File

@ -8,7 +8,7 @@
</div> </div>
<div class="right-top"> <div class="right-top">
<el-button @click="cancel()">{{ $t('form.cancel') }}</el-button> <el-button @click="cancel()">{{ $t('form.cancel') }}</el-button>
<el-button @click="exportExcel()">{{ $t('form.export') }}</el-button>
<!-- <el-button @click="exportExcel()">{{ $t('form.export') }}</el-button> -->
</div> </div>
</div> </div>
<div class="detail-title"><img src="@/assets/images/detail-title.png">{{ $t('page.business.resource.gsp.gsprkjl') <div class="detail-title"><img src="@/assets/images/detail-title.png">{{ $t('page.business.resource.gsp.gsprkjl')
@ -50,6 +50,17 @@
</el-input> </el-input>
</div> </div>
<div class="right"> <div class="right">
<div class="right-title">{{ $t('page.business.resource.gsp.cctj') }}</div>
<el-input type="text" :value="form.cctj" disabled />
</div>
</div>
<div class="pal">
<div class="left">
<div class="left-title">{{ $t('page.business.resource.gsp.yxq') }}</div>
<el-input type="text" :value="form.yxq" maxlength="50" disabled>
</el-input>
</div>
<div class="right">
<div class="right-title">{{ $t('page.business.resource.gsp.zysx') }}</div> <div class="right-title">{{ $t('page.business.resource.gsp.zysx') }}</div>
<el-input type="text" :value="form.zysx" disabled /> <el-input type="text" :value="form.zysx" disabled />
</div> </div>

+ 9
- 2
src/views/business/resource/gsp/comps/rkjlList.vue View File

@ -62,7 +62,7 @@
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<!-- 导入 --> <!-- 导入 -->
<el-button type="primary" @click="handleXz" v-hasPermi="['business:resource:gsp:rkdr']">{{
<el-button type="primary" @click="handleImport" v-hasPermi="['business:resource:gsp:rkdr']">{{
$t('page.business.resource.gsp.dr') }}</el-button> $t('page.business.resource.gsp.dr') }}</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
@ -176,6 +176,9 @@
<Bj key="Bj" ref="Bj" @callback="handleQuery" /> <Bj key="Bj" ref="Bj" @callback="handleQuery" />
<!-- 新增 --> <!-- 新增 -->
<Xz key="Xz" ref="Xz" @callback="handleQuery" /> <Xz key="Xz" ref="Xz" @callback="handleQuery" />
<!-- 导入 -->
<RkjlImport key="RkjlImport" ref="RkjlImport" @callback="handleQuery"/>
</div> </div>
</div> </div>
</template> </template>
@ -190,11 +193,12 @@ import Jd from "./rkjl/Jd";
import Xq from "./rkjl/Xq"; import Xq from "./rkjl/Xq";
import Xz from "./rkjl/Xz"; import Xz from "./rkjl/Xz";
import Bj from "./rkjl/Bj"; import Bj from "./rkjl/Bj";
import RkjlImport from "./rkjl/RkjlImport"
import { deepClone } from "@/utils/index"; import { deepClone } from "@/utils/index";
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
export default { export default {
name: "FfjlList", name: "FfjlList",
components: { Sd, Js, Gd, Jd, Jy, Xq, Xz, Bj },
components: { Sd, Js, Gd, Jd, Jy, Xq, Xz, Bj, RkjlImport },
data() { data() {
return { return {
daterangeCk: [], daterangeCk: [],
@ -232,6 +236,9 @@ export default {
this.getList() this.getList()
}, },
methods: { methods: {
handleImport() {
this.$refs.RkjlImport.show()
},
// //
exportExcel() { exportExcel() {
let that = this let that = this

+ 8
- 6
src/views/business/resource/gyzj/comps/gyzj/Cc.vue View File

@ -18,15 +18,14 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.cctj')" prop="cctj">
<BusinessSelect v-model="form.cctj" dictType="business_cctj"></BusinessSelect>
<el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.ccwz')" prop="ccwz">
<BusinessSelect v-model="form.ccwz" dictType="business_ccwz" @change="ccwzChange"></BusinessSelect>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.ccwz')" prop="ccwz">
<BusinessSelect v-model="form.ccwz" dictType="business_ccwz"></BusinessSelect>
<el-form-item :label="$t('page.business.resource.mjy.cctj')" prop="cctj">
<BusinessSelect v-model="form.cctj" dictType="business_cctj"></BusinessSelect>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -140,6 +139,9 @@ export default {
created() { created() {
}, },
methods: { methods: {
ccwzChange(val){
this.form.cctj=val.wc
},
cancel() { cancel() {
this.open = false this.open = false
}, },

+ 5
- 2
src/views/business/resource/gyzj/comps/gyzj/Rk.vue View File

@ -39,14 +39,14 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.gyzj.rkwz')" prop="rkwz"> <el-form-item :label="$t('page.business.resource.gyzj.rkwz')" prop="rkwz">
<BusinessSelect v-model="form.rkwz" dictType="business_rkwz"></BusinessSelect>
<BusinessSelect v-model="form.rkwz" dictType="business_ccwz" @change="rkwzChange"></BusinessSelect>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.gyzj.rktj')" prop="rktj"> <el-form-item :label="$t('page.business.resource.gyzj.rktj')" prop="rktj">
<BusinessSelect v-model="form.rktj" dictType="business_rktj"></BusinessSelect>
<BusinessSelect v-model="form.rktj" dictType="business_cctj"></BusinessSelect>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
@ -190,6 +190,9 @@ export default {
created() { created() {
}, },
methods: { methods: {
rkwzChange(val){
this.form.rktj=val.wc
},
cancel() { cancel() {
this.open = false this.open = false
}, },

+ 4
- 1
src/views/business/resource/gyzj/comps/gyzj/Sqrk.vue View File

@ -40,7 +40,7 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.gyzj.rkwz')" prop="rkwz"> <el-form-item :label="$t('page.business.resource.gyzj.rkwz')" prop="rkwz">
<BusinessSelect v-model="form.rkwz" dictType="business_ccwz"></BusinessSelect>
<BusinessSelect v-model="form.rkwz" dictType="business_ccwz" @change="rkwzChange"></BusinessSelect>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -165,6 +165,9 @@ export default {
created() { created() {
}, },
methods: { methods: {
rkwzChange(val){
this.form.rktj=val.wc
},
cancel() { cancel() {
this.open = false this.open = false
}, },

+ 7
- 5
src/views/business/resource/mjy/comps/mjy/Cc.vue View File

@ -19,14 +19,13 @@
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.cctj')" prop="cctj">
<BusinessSelect v-model="form.cctj" dictType="business_cctj"></BusinessSelect>
<el-form-item :label="$t('page.business.resource.mjy.ccwz')" prop="ccwz">
<BusinessSelect v-model="form.ccwz" dictType="business_ccwz" @change="ccwzChange"></BusinessSelect>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.ccwz')" prop="ccwz">
<BusinessSelect v-model="form.ccwz" dictType="business_ccwz"></BusinessSelect>
<el-form-item :label="$t('page.business.resource.mjy.cctj')" prop="cctj">
<BusinessSelect v-model="form.cctj" dictType="business_cctj" ></BusinessSelect>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -139,6 +138,9 @@ export default {
created() { created() {
}, },
methods: { methods: {
ccwzChange(val){
this.form.cctj=val.wc
},
cancel() { cancel() {
this.open = false this.open = false
}, },

+ 17
- 14
src/views/business/resource/mjy/comps/mjy/Gh.vue View File

@ -4,7 +4,7 @@
<el-dialog :title="$t('page.business.resource.mjy.guihuan')" :visible.sync="open" width="800px" append-to-body <el-dialog :title="$t('page.business.resource.mjy.guihuan')" :visible.sync="open" width="800px" append-to-body
:close-on-click-modal="false"> :close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px" v-if="open"> <el-form ref="form" :model="form" :rules="rules" label-width="120px" v-if="open">
<div class="sbzdtcma"> <input type="text"> <input type="password" show-password> </div>
<div class="sbzdtcma"> <input type="text"> <input type="password" show-password> </div>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.mc')"> <el-form-item :label="$t('page.business.resource.mjy.mc')">
@ -27,20 +27,20 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.nd')"> <el-form-item :label="$t('page.business.resource.mjy.nd')">
<el-input type="text" v-model="form.nd" maxlength="50" disabled> <template slot="append">{{ form.nddw <el-input type="text" v-model="form.nd" maxlength="50" disabled> <template slot="append">{{ form.nddw
}}</template>
}}</template>
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.cctj')">
<el-input type="text" v-model="form.cctj" maxlength="50" disabled />
<el-form-item :label="$t('page.business.resource.mjy.ccwz')">
<el-input type="text" v-model="form.ccwz" maxlength="50" disabled />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.ccwz')">
<el-input type="text" v-model="form.ccwz" maxlength="50" disabled />
<el-form-item :label="$t('page.business.resource.mjy.cctj')">
<el-input type="text" v-model="form.cctj" maxlength="50" disabled />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -48,7 +48,7 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.ckjz')"> <el-form-item :label="$t('page.business.resource.mjy.ckjz')">
<el-input type="text" v-model="form.ckl" maxlength="50" disabled> <template slot="append">{{ form.ckldw <el-input type="text" v-model="form.ckl" maxlength="50" disabled> <template slot="append">{{ form.ckldw
}}</template>
}}</template>
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -63,7 +63,7 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.ckmz')"> <el-form-item :label="$t('page.business.resource.mjy.ckmz')">
<el-input type="text" v-model="form.ckmz" maxlength="50" disabled> <template slot="append">{{ form.ckmzdw <el-input type="text" v-model="form.ckmz" maxlength="50" disabled> <template slot="append">{{ form.ckmzdw
}}</template>
}}</template>
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -78,7 +78,7 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.rkwz')" prop="rkwz"> <el-form-item :label="$t('page.business.resource.mjy.rkwz')" prop="rkwz">
<BusinessSelect v-model="form.rkwz" dictType="business_ccwz"></BusinessSelect>
<BusinessSelect v-model="form.rkwz" dictType="business_ccwz" @change="rkwzChange" ></BusinessSelect>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
@ -138,7 +138,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.ghr1Id') + $t('form.password')" prop="ghr1mm"> <el-form-item :label="$t('page.business.resource.mjy.ghr1Id') + $t('form.password')" prop="ghr1mm">
<el-input type="password" show-password v-model="form.ghr1mm" maxlength="20"
<el-input type="password" show-password v-model="form.ghr1mm" maxlength="20"
:placeholder="$t('form.placeholderInput')" /> :placeholder="$t('form.placeholderInput')" />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -151,21 +151,21 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.ghr2Id') + $t('form.password')" prop="ghr2mm"> <el-form-item :label="$t('page.business.resource.mjy.ghr2Id') + $t('form.password')" prop="ghr2mm">
<el-input type="password" show-password v-model="form.ghr2mm" maxlength="20"
<el-input type="password" show-password v-model="form.ghr2mm" maxlength="20"
:placeholder="$t('form.placeholderInput')" /> :placeholder="$t('form.placeholderInput')" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.jsr1Id')" >
<el-form-item :label="$t('page.business.resource.mjy.jsr1Id')">
<el-input type="text" v-model="nickName" maxlength="50" disabled <el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" /> :placeholder="$t('form.placeholderInput')" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.jsr1Id') + $t('form.password')" prop="jsr1mm"> <el-form-item :label="$t('page.business.resource.mjy.jsr1Id') + $t('form.password')" prop="jsr1mm">
<el-input type="password" show-password v-model="form.jsr1mm" maxlength="20"
<el-input type="password" show-password v-model="form.jsr1mm" maxlength="20"
:placeholder="$t('form.placeholderInput')" /> :placeholder="$t('form.placeholderInput')" />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -178,7 +178,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.jsr2Id') + $t('form.password')" prop="jsr2mm"> <el-form-item :label="$t('page.business.resource.mjy.jsr2Id') + $t('form.password')" prop="jsr2mm">
<el-input type="password" show-password v-model="form.jsr2mm" maxlength="20"
<el-input type="password" show-password v-model="form.jsr2mm" maxlength="20"
:placeholder="$t('form.placeholderInput')" /> :placeholder="$t('form.placeholderInput')" />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -299,6 +299,9 @@ export default {
created() { created() {
}, },
methods: { methods: {
rkwzChange(val) {
this.form.rktj = val.wc
},
rklChange() { rklChange() {
if (!isNaN(this.form.rkmz)) { if (!isNaN(this.form.rkmz)) {
this.form.jsl = _.subtract(parseFloat(this.form.ckmz), parseFloat(this.form.rkmz)) this.form.jsl = _.subtract(parseFloat(this.form.ckmz), parseFloat(this.form.rkmz))

+ 4
- 1
src/views/business/resource/mjy/comps/mjy/Rk.vue View File

@ -47,7 +47,7 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('page.business.resource.mjy.rkwz')" prop="rkwz"> <el-form-item :label="$t('page.business.resource.mjy.rkwz')" prop="rkwz">
<BusinessSelect v-model="form.rkwz" dictType="business_ccwz"></BusinessSelect>
<BusinessSelect v-model="form.rkwz" dictType="business_ccwz" @change="rkwzChange"></BusinessSelect>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
@ -239,6 +239,9 @@ export default {
created() { created() {
}, },
methods: { methods: {
rkwzChange(val){
this.form.rktj=val.wc
},
cancel() { cancel() {
this.open = false this.open = false
}, },

+ 1
- 0
src/views/business/resource/yq/comps/detail.vue View File

@ -129,6 +129,7 @@ export default {
this.form = response.data this.form = response.data
this.open = true this.open = true
}) })
this.saveSimpleLog({name:row.bh,nameEn:row.bh,jcmc:'仪器详情',jcmcEn:'Instrument Detail'})
this.queryParams.id = row.id this.queryParams.id = row.id
yqJcgj_list(this.queryParams).then((response) => { yqJcgj_list(this.queryParams).then((response) => {
this.qmList = response.rows this.qmList = response.rows

+ 1
- 0
src/views/business/study/comp/syff/Xq.vue View File

@ -176,6 +176,7 @@ export default {
studyMethod_export({ studyMethodId: this.form.id }).then(response => { studyMethod_export({ studyMethodId: this.form.id }).then(response => {
let fileUrl = response.data.fileUrl let fileUrl = response.data.fileUrl
this.$download.saveAs(process.env.VUE_APP_FILE_DOMAIN + fileUrl, this.form.ffmc + ".pdf"); this.$download.saveAs(process.env.VUE_APP_FILE_DOMAIN + fileUrl, this.form.ffmc + ".pdf");
this.saveSimpleLog({name:this.form.ffmc,nameEn:this.form.ffmc,jcmc:'方法导出',jcmcEn:'Method Export'})
}) })
} }

+ 1
- 0
src/views/business/study/comp/syj/Detail.vue View File

@ -142,6 +142,7 @@ export default {
studyRoom_info({ id: row.id }).then(response => { studyRoom_info({ id: row.id }).then(response => {
this.form = response.data this.form = response.data
this.open = true this.open = true
this.saveSimpleLog({name:row.syjh,nameEn:row.syjh,jcmc:'饲养间详情',jcmcEn:'Animal Room Detail'})
}).finally(() => { }).finally(() => {
this.$modal.closeLoading() this.$modal.closeLoading()
}) })

+ 1
- 0
src/views/business/study/comp/wzlb.vue View File

@ -114,6 +114,7 @@ export default {
changeTab(item) { changeTab(item) {
if (this.active !== item.key) { if (this.active !== item.key) {
this.active = item.key this.active = item.key
this.saveSimpleLog({name:this.$t(item.name,'zh_CN'),nameEn:this.$t(item.name,'en_US'),jcmc:this.$t('system.enterPage','zh_CN'),jcmcEn:this.$t('system.enterPage','en_US')})
} }
} }
} }

+ 1
- 1
src/views/business/study/comp/wzlb/mjyList.vue View File

@ -93,7 +93,7 @@
$t('page.business.resource.mjy.xgkc') }}</el-button> $t('page.business.resource.mjy.xgkc') }}</el-button>
</template> </template>
<!-- 取出 --> <!-- 取出 -->
<el-button type="text" v-if="scope.row.zjzt==3&&scope.row.cczt==3&& scope.row.cczt == 1" @click="handleQc(scope.row)"
<el-button type="text" v-if="scope.row.zjzt==3&&scope.row.cczt==3" @click="handleQc(scope.row)"
v-hasPermi="['business:studyMjy:qc', 'business:nonTrialMjy:qc', 'business:drugMjy:qc']">{{ v-hasPermi="['business:studyMjy:qc', 'business:nonTrialMjy:qc', 'business:drugMjy:qc']">{{
$t('page.business.resource.gyzj.quchu') }}</el-button> $t('page.business.resource.gyzj.quchu') }}</el-button>
<!-- 存储 --> <!-- 存储 -->

Loading…
Cancel
Save