gamma 模块的RLR 导出

This commit is contained in:
renpy 2023-09-12 17:42:19 +08:00
parent 1b80817da3
commit efe775f0f0
19 changed files with 395 additions and 139 deletions

View File

@ -1,5 +1,5 @@
<template>
<a-date-picker v-bind="$attrs" v-model="innerValue">
<a-date-picker v-bind="$attrs" v-model="innerValue" @change="onChange">
<img src="@/assets/images/global/calendar.png" slot="suffixIcon" alt="" srcset="" />
</a-date-picker>
</template>
@ -19,7 +19,12 @@ export default {
this.$emit('input', val)
}
}
}
},
methods: {
onChange(mont,date) {
this.$emit("change",mont,date)
}
},
}
</script>
<style lang=""></style>

View File

@ -2,13 +2,13 @@
<div>
<a-form-model :labelCol="{ style: { width: '240px' } }" :wrapperCol="{style:{ width: '300px' }}">
<a-form-model-item label="Collection Start Time">
<custom-date-picker v-model="model.collectStart" show-time></custom-date-picker>
<custom-date-picker v-model="model.collectStart" show-time @change="(mont,date)=>handleValueChange(date)"></custom-date-picker>
</a-form-model-item>
<a-form-model-item label="Collection Stop Time">
<custom-date-picker v-model="model.collectStop" show-time></custom-date-picker>
<custom-date-picker v-model="model.collectStop" show-time @change="(mont,date)=>handleValueChange(date)"></custom-date-picker>
</a-form-model-item>
<a-form-model-item label="Total Air Volume Sampled[m3]">
<a-input v-model="model.collectAirVolume"></a-input>
<a-input v-model="model.collectAirVolume" @change="e=>handleValueChange(e.target.value)"></a-input>
</a-form-model-item>
</a-form-model>
</div>
@ -45,6 +45,11 @@ export default {
this.model.collectStop = this.allData.collect_stop;
this.model.collectAirVolume = this.allData.collect_airVolume;
},
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
}
</script>

View File

@ -1,6 +1,6 @@
<template>
<div>
<a-textarea v-model="model.comment" :rows="25"></a-textarea>
<a-textarea v-model="model.comment" :rows="25" @change="e=>handleValueChange(e.target.value)"></a-textarea>
</div>
</template>
@ -31,6 +31,11 @@ export default {
mounted () {
this.model.comment = this.allData.Comment;
},
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
}
</script>

View File

@ -2,16 +2,16 @@
<div>
<a-form-model layout="vertical">
<a-form-model-item label="Person Responsible for the Test">
<a-input v-model="model.conclusionPerson"></a-input>
<a-input v-model="model.conclusionPerson" @change="e=>handleValueChange(e.target.value)"></a-input>
</a-form-model-item>
<a-form-model-item label="~IDCSummary">
<a-textarea v-model="model.conclusionIDC" :rows="5" />
<a-textarea v-model="model.conclusionIDC" :rows="5" @change="e=>handleValueChange(e.target.value)" />
</a-form-model-item>
<a-form-model-item label="~labsummary">
<a-textarea v-model="model.conclusionLab" :rows="5" />
<a-textarea v-model="model.conclusionLab" :rows="5" @change="e=>handleValueChange(e.target.value)" />
</a-form-model-item>
<a-form-model-item label="~ResultComparison">
<a-textarea v-model="model.conclusionRes" :rows="5" />
<a-textarea v-model="model.conclusionRes" :rows="5" @change="e=>handleValueChange(e.target.value)" />
</a-form-model-item>
</a-form-model>
</div>
@ -50,6 +50,11 @@ export default {
this.model.conclusionLab = this.allData.Conclusion_Lab;
this.model.conclusionRes = this.allData.Conclusion_Res;
},
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
}
</script>

View File

@ -6,37 +6,37 @@
:wrapperCol="{ style: { width: '200px' } }"
>
<a-form-model-item label="MSG_ID">
<a-input v-model="model.msgId" />
<a-input v-model="model.msgId" @change="e=>handleValueChange(e.target.value)"/>
</a-form-model-item>
<a-form-model-item label="Data_Type">
<a-input v-model="model.dataType" />
<a-input v-model="model.dataType" @change="e=>handleValueChange(e.target.value)"/>
</a-form-model-item>
<a-form-model-item label="Priority Level">
<custom-select v-model="model.priorityLevel" style="width: 150px" :options="priorityLevbelOptions"> </custom-select>
<custom-select v-model="model.priorityLevel" style="width: 150px" :options="priorityLevbelOptions" @change="handleValueChange"> </custom-select>
</a-form-model-item>
<a-form-model-item label="Station Code">
<a-input v-model="model.stationCode"/>
<a-input v-model="model.stationCode" @change="e=>handleValueChange(e.target.value)"/>
</a-form-model-item>
<a-form-model-item label="SRID">
<a-input v-model="model.srid"/>
<a-input v-model="model.srid" @change="e=>handleValueChange(e.target.value)"/>
</a-form-model-item>
<a-form-model-item label="Laboratory Code">
<a-input v-model="model.labCode"/>
<a-input v-model="model.labCode" @change="e=>handleValueChange(e.target.value)"/>
</a-form-model-item>
<a-form-model-item label="Laboratory Detector Code">
<a-input v-model="model.labDetector"/>
<a-input v-model="model.labDetector" @change="e=>handleValueChange(e.target.value)"/>
</a-form-model-item>
<a-form-model-item label="Report Type">
<custom-select v-model="model.reportType" style="width: 150px" :options="reportTypeOptions"> </custom-select>
<custom-select v-model="model.reportType" style="width: 150px" :options="reportTypeOptions" @change="handleValueChange"> </custom-select>
</a-form-model-item>
<a-form-model-item label="Report Number">
<a-input-number v-model="model.reportnumber" style="width: 100%;" />
<a-input-number v-model="model.reportnumber" style="width: 100%;" @change="handleValueChange"/>
</a-form-model-item>
<a-form-model-item label="Sample Category">
<custom-select v-model="model.sampleCategory" style="width: 150px" :options="sampleCategoryOptions"> </custom-select>
<custom-select v-model="model.sampleCategory" style="width: 150px" :options="sampleCategoryOptions" @change="handleValueChange"> </custom-select>
</a-form-model-item>
<a-form-model-item label="Message Transmission Time">
<custom-date-picker v-model="model.transmission" show-time />
<custom-date-picker v-model="model.transmission" show-time @change="(mont,date)=>handleValueChange(date)"/>
</a-form-model-item>
</a-form-model>
</div>
@ -120,7 +120,12 @@ export default {
transmission: "",
}
}
}
},
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
}
</script>

View File

@ -1,6 +1,6 @@
<template>
<div>
<table-with-operators :columns="columns" :list="list" />
<table-with-operators :columns="columns" :list="list" @cellChange="handleCellChange" />
</div>
</template>
@ -10,17 +10,20 @@ const columns = [
{
title: 'Nuclide',
dataIndex: 'nuclide',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'nuclide' }
},
{
title: 'MDA(Bq)',
dataIndex: 'mda',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'mda' }
},
{
title: 'MDC(Bq/m3)',
dataIndex: 'mdc',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'mdc' }
}
]
@ -31,14 +34,13 @@ export default {
data() {
this.columns = columns
return {
list: [
{
nuclide: 'nuclide',
mda: 'mda',
mdc: 'mdc'
}
]
list: []
}
}
},
methods: {
handleCellChange(data) {
this.$emit("valChange",data)
}
},
}
</script>

View File

@ -1,6 +1,6 @@
<template>
<div>
<table-with-operators :columns="columns" :list="list" />
<table-with-operators :columns="columns" :list="list" @cellChange="handleCellChange" />
</div>
</template>
@ -10,32 +10,38 @@ const columns = [
{
title: 'Nuclide1',
dataIndex: 'nuclide1',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'nuclide1' }
},
{
title: 'Nuclide2',
dataIndex: 'nuclide2',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'nuclide2' }
},
{
title: 'Ratio',
dataIndex: 'ratio',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'ratio' }
},
{
title: 'Ratio_err(%)',
dataIndex: 'ratioErr',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'ratioErr' }
},
{
title: 'Reference Time',
dataIndex: 'referenceTime',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'referenceTime' }
},
{
title: 'Zero Time',
dataIndex: 'zeroTime',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'zeroTime' }
}
]
@ -44,17 +50,13 @@ export default {
data() {
this.columns = columns
return {
list: [
{
nuclide1: '',
nuclide2: '',
ratio: '',
ratioErr: '',
referenceTime: '',
zeroTime: ''
}
]
list: []
}
}
},
methods: {
handleCellChange(data) {
this.$emit("valChange",data)
}
},
}
</script>

View File

@ -2,7 +2,7 @@
<div>
<a-form-model layout="vertical">
<a-form-model-item label="~AnalysisPurpose">
<a-textarea v-model="model.objPurpose" :rows="9" />
<a-textarea v-model="model.objPurpose" :rows="9" @change="e=>handleValueChange(e.target.value)"/>
</a-form-model-item>
<a-form-model-item label="~TestsAuthorized">
<a-textarea v-model="model.objAuthorized" :rows="5" />
@ -45,6 +45,11 @@ export default {
this.model.objAuthorized = this.allData.Obj_authorized;
this.model.objInstruction = this.allData.Obj_instruction;
},
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
}
</script>

View File

@ -1,11 +1,12 @@
<template>
<div>
<table-with-operators :columns="columns" :list="list" />
<table-with-operators :columns="columns" :list="list" @cellChange="handleCellChange" />
</div>
</template>
<script>
import TableWithOperators from './TableWithOperators.vue'
import { cloneDeep } from 'lodash'
const columns = [
{
title: 'Index',
@ -16,13 +17,15 @@ const columns = [
{
title: 'Explanation Level(%)',
dataIndex: 'exLevel',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'exLevel' }
},
{
title: 'Identified Nuclides',
dataIndex: 'identified',
align: 'center',
width: '60%'
width: '60%',
scopedSlots: { customRender: 'identified' }
}
]
@ -31,18 +34,22 @@ export default {
TableWithOperators
},
props: {
allData: {
type: Object,
default: ()=>{}
tableData: {
type: Array,
default: ()=>[]
},
},
watch: {
allData: {
handler(val) {
tableData: {
handler(val, old) {
console.log(val);
this.list = cloneDeep(val)
this.list.forEach((item, index) => {
item.id = this.guid()
})
},
deep: true,
immediate:true
immediate: true,
deep:true
}
},
data() {
@ -51,8 +58,17 @@ export default {
list: []
}
},
mounted () {
this.list = this.allData.Association
methods: {
handleCellChange(data) {
this.$emit("valChange",data)
},
guid() {
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
var r = Math.random() * 16 | 0,
v = c == 'x' ? r : (r & 0x3 | 0x8);
return v.toString(16);
});
},
},
}
</script>

View File

@ -1,6 +1,6 @@
<template>
<div>
<table-with-operators :columns="columns" :list="list" />
<table-with-operators :columns="columns" :list="list" @cellChange="handleCellChange" />
</div>
</template>
@ -94,6 +94,9 @@ export default {
}
},
methods: {
handleCellChange(data) {
this.$emit("valChange",data)
},
guid() {
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
var r = Math.random() * 16 | 0,

View File

@ -1,10 +1,10 @@
<template>
<a-form-model layout="vertical">
<a-form-model-item label="Software Used">
<a-input v-model="model.peakMethodSoftware" />
<a-input v-model="model.peakMethodSoftware" @change="e=>handleValueChange(e.target.value)" />
</a-form-model-item>
<a-form-model-item label="Peak Location Algorithm">
<a-input v-model="model.peakMethodLocation" />
<a-input v-model="model.peakMethodLocation" @change="e=>handleValueChange(e.target.value)" />
</a-form-model-item>
</a-form-model>
</template>
@ -38,6 +38,11 @@ export default {
this.model.peakMethodSoftware = this.allData.PeakMethod_software;
this.model.peakMethodLocation = this.allData.PeakMethod_location;
},
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
}
</script>

View File

@ -2,13 +2,13 @@
<div>
<a-form-model layout="vertical">
<a-form-model-item label="~SAMPLEPHD">
<a-textarea v-model="model.referenceSamplePHD" :rows="6" />
<a-textarea v-model="model.referenceSamplePHD" :rows="6" @change="e=>handleValueChange(e.target.value)" />
</a-form-model-item>
<a-form-model-item label="~CALIBPHD">
<a-textarea v-model="model.referenceCalibPHD" :rows="6" />
<a-textarea v-model="model.referenceCalibPHD" :rows="6" @change="e=>handleValueChange(e.target.value)" />
</a-form-model-item>
<a-form-model-item label="~PhysicalConstants">
<a-textarea v-model="model.referencePhysical" :rows="6" />
<a-textarea v-model="model.referencePhysical" :rows="6" @change="e=>handleValueChange(e.target.value)" />
</a-form-model-item>
</a-form-model>
</div>
@ -45,6 +45,11 @@ export default {
this.model.referenceCalibPHD = this.allData.Reference_CalibPHD;
this.model.referencePhysical = this.allData.Reference_physical;
},
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
}
</script>

View File

@ -2,78 +2,94 @@
<div>
<a-form-model :labelCol="{ style: { width: '205px' } }">
<a-form-model-item label="Activity Reference Time">
<custom-date-picker v-model="model.activityReferenceTime" show-time />
<custom-date-picker v-model="model.activityReferenceTime" show-time @change="(mont,date)=>handleValueChange(date)" />
</a-form-model-item>
<a-form-model-item label="Concentration Reference Time">
<custom-date-picker v-model="model.Concentration" show-time />
<custom-date-picker v-model="model.Concentration" show-time @change="(mont,date)=>handleValueChange(date)" />
</a-form-model-item>
</a-form-model>
<div class="operators">
<!-- <div class="operators">
<a-button type="primary">Insert Before</a-button>
<a-button type="primary">Insert After</a-button>
<a-button type="primary">Delete</a-button>
</div>
<a-table
</div> -->
<table-with-operators :columns="columns" :list="list" @cellChange="handleCellChange" />
<!-- <a-table
:class="list.length ? 'has-data' : ''"
:columns="columns"
:dataSource="list"
:pagination="false"
:scroll="{ y: 370 }"
>
</a-table>
</a-table> -->
</div>
</template>
<script>
import TableWithOperators from './TableWithOperators.vue'
import { cloneDeep } from 'lodash'
const columns = [
{
title: 'Nuclide',
dataIndex: 'nuclide',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'nuclide' }
},
{
title: 'Activity(Bq)',
dataIndex: 'activity',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'activity' }
},
{
title: 'Act_err(%)',
dataIndex: 'actErr',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'actErr' }
},
{
title: 'Factor',
dataIndex: 'factor1',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'factor1' }
},
{
title: 'Confidence(%)',
dataIndex: 'confidence1',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'confidence1' }
},
{
title: 'Conc.(Bq/m3)',
dataIndex: 'conc',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'conc' }
},
{
title: 'Conc_err',
dataIndex: 'concErr',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'concErr' }
},
{
title: 'Factor',
dataIndex: 'factor2',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'factor2' }
},
{
title: 'Confidence(%)',
dataIndex: 'confidence2',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'confidence2' }
}
]
export default {
components: {
TableWithOperators
},
props: {
allData: {
type: Object,
@ -84,6 +100,12 @@ export default {
allData: {
handler(val) {
console.log(val);
this.model.activityReferenceTime = this.allData.Result_act_ref;
this.model.Concentration = this.allData.Result_conc_ref;
this.list = cloneDeep(val.Result)
this.list.forEach((item, index) => {
item.id = this.guid()
})
},
deep: true,
immediate:true
@ -99,10 +121,20 @@ export default {
list: []
}
},
mounted () {
this.model.activityReferenceTime = this.allData.Result_act_ref;
this.model.Concentration = this.allData.Result_conc_ref;
this.list = this.allData.Result
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
},
handleCellChange(data) {
this.$emit("listChange",data)
},
guid() {
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
var r = Math.random() * 16 | 0,
v = c == 'x' ? r : (r & 0x3 | 0x8);
return v.toString(16);
});
},
},
}
</script>

View File

@ -6,25 +6,25 @@
:wrapperCol="{ style: { width: '300px' } }"
>
<a-form-model-item label="Sample Reference Identification">
<a-input v-model="model.receiptSrid"></a-input>
<a-input v-model="model.receiptSrid" @change="e=>handleValueChange(e.target.value)"></a-input>
</a-form-model-item>
<a-form-model-item label="Seal Number">
<a-input v-model="model.receiptSealNum"></a-input>
<a-input v-model="model.receiptSealNum" @change="e=>handleValueChange(e.target.value)"></a-input>
</a-form-model-item>
<a-form-model-item label="Sample Receipt Time">
<custom-date-picker v-model="model.receiptDateTime" show-time></custom-date-picker>
<custom-date-picker v-model="model.receiptDateTime" show-time @change="(mont,date)=>handleValueChange(date)"></custom-date-picker>
</a-form-model-item>
</a-form-model>
<a-form-model layout="vertical">
<a-form-model-item label="~PackageCondition">
<a-textarea v-model="model.receiptPackage" :rows="4" />
<a-textarea v-model="model.receiptPackage" :rows="4" @change="e=>handleValueChange(e.target.value)" />
</a-form-model-item>
<a-form-model-item label="~SealCondition">
<a-textarea v-model="model.receiptSeal" :rows="4" />
<a-textarea v-model="model.receiptSeal" :rows="4" @change="e=>handleValueChange(e.target.value)" />
</a-form-model-item>
<a-form-model-item label="~SampleCondition">
<a-textarea v-model="model.receiptSample" :rows="4" />
<a-textarea v-model="model.receiptSample" :rows="4" @change="e=>handleValueChange(e.target.value)" />
</a-form-model-item>
</a-form-model>
</div>
@ -67,6 +67,11 @@ export default {
this.model.receiptSeal = this.allData.Receipt_seal;
this.model.receiptSample = this.allData.Receipt_sample;
},
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
}
</script>

View File

@ -75,7 +75,7 @@ export default {
initList() {
let arr = []
let keys = 0
this.dataSource.forEach((item,index) => {
this.dataSource.filter(data=>data.type==="web").forEach((item,index) => {
let num = 0
keys=Object.keys(item).length
Object.keys(item).forEach(key => {
@ -101,6 +101,7 @@ export default {
this.$message.warning("Please finishi ti edit new inserted row first.")
} else {
let obj = {
type:"web",
id: this.guid(),
energy: "",
energyErr: "",
@ -171,6 +172,7 @@ export default {
this.dataSource = dataSource;
}
this.initList()
this.$emit("cellChange",this.dataSource)
}
},
}

View File

@ -2,16 +2,16 @@
<div>
<a-form-model layout="vertical">
<a-form-model-item label="Type of Test Performed">
<a-textarea v-model="model.testType" :rows="5" />
<a-textarea v-model="model.testType" :rows="5" @change="e=>handleValueChange(e.target.value)" />
</a-form-model-item>
<a-form-model-item label="Test Completion Date">
<custom-date-picker v-model="model.testCompletion" />
<custom-date-picker v-model="model.testCompletion" @change="(mont,date)=>handleValueChange(date)" />
</a-form-model-item>
<a-form-model-item label="Person Responsible for the Test">
<a-input v-model="model.testPerson" />
<a-input v-model="model.testPerson" @change="e=>handleValueChange(e.target.value)" />
</a-form-model-item>
<a-form-model-item label="Purpose of Test Performed">
<a-textarea v-model="model.testPurpose" :rows="5" />
<a-textarea v-model="model.testPurpose" :rows="5" @change="e=>handleValueChange(e.target.value)" />
</a-form-model-item>
</a-form-model>
</div>
@ -50,6 +50,11 @@ export default {
this.model.testPerson = this.allData.Test_person;
this.model.testPurpose = this.allData.Test_purpose;
},
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
}
</script>

View File

@ -2,19 +2,19 @@
<div>
<a-form-model layout="vertical">
<a-form-model-item label="Software Used">
<a-input v-model="model.analyMethodSoftware"></a-input>
<a-input v-model="model.analyMethodSoftware" @change="e=>handleValueChange(e.target.value)"></a-input>
</a-form-model-item>
<a-form-model-item label="~NuclidesMethod">
<a-input v-model="model.analyMethodNuclide"></a-input>
<a-input v-model="model.analyMethodNuclide" @change="e=>handleValueChange(e.target.value)"></a-input>
</a-form-model-item>
<a-form-model-item label="~BaselineMethod">
<a-input v-model="model.analyMethodBaseline"></a-input>
<a-input v-model="model.analyMethodBaseline" @change="e=>handleValueChange(e.target.value)"></a-input>
</a-form-model-item>
<a-form-model-item label="~LCMethod">
<a-input v-model="model.analyMethodLc"></a-input>
<a-input v-model="model.analyMethodLc" @change="e=>handleValueChange(e.target.value)"></a-input>
</a-form-model-item>
<a-form-model-item label="CalibrationMethod">
<a-input v-model="model.analyMethodCalib"></a-input>
<a-input v-model="model.analyMethodCalib" @change="e=>handleValueChange(e.target.value)"></a-input>
</a-form-model-item>
</a-form-model>
</div>
@ -55,6 +55,11 @@ export default {
this.model.analyMethodLc = this.allData.AnalyMethod_lc;
this.model.analyMethodCalib = this.allData.AnalyMethod_calib;
},
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
}
</script>

View File

@ -1,6 +1,6 @@
<template>
<div>
<table-with-operators :columns="columns" :list="list" />
<table-with-operators :columns="columns" :list="list" @cellChange="handleCellChange" />
</div>
</template>
@ -10,22 +10,26 @@ const columns = [
{
title: 'Nuclide',
dataIndex: 'nuclide',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'nuclide' }
},
{
title: 'Energy(keV)',
dataIndex: 'energy',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'energy' }
},
{
title: 'Correction Factor',
dataIndex: 'correctionFactor',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'correctionFactor' }
},
{
title: 'Uncertainty(%)',
dataIndex: 'uncertainty',
align: 'center'
align: 'center',
scopedSlots: { customRender: 'uncertainty' }
}
]
@ -34,15 +38,13 @@ export default {
data() {
this.columns = columns
return {
list: [
{
nuclide: 'nuclide',
energy: 'energy',
correctionFactor: 'correctionFactor',
uncertainty: 'uncertainty'
}
]
list: []
}
}
},
methods: {
handleCellChange(data) {
this.$emit("valChange",data)
}
},
}
</script>

View File

@ -17,52 +17,52 @@
<h4>{{ tabs[activeKey] }}</h4>
<div class="rlr-content-detail">
<template v-if="activeKey == 0">
<c-header :allData="allInfo" />
<c-header :allData="allInfo" @valChange="getNewVal_header" />
</template>
<template v-if="activeKey == 1">
<Objective :allData="allInfo" />
<Objective :allData="allInfo" @valChange="getNewVal_obj" />
</template>
<template v-if="activeKey == 2">
<collection :allData="allInfo" />
<collection :allData="allInfo" @valChange="getNewVal_collect" />
</template>
<template v-if="activeKey == 3">
<sample-receipt :allData="allInfo" />
<sample-receipt :allData="allInfo" @valChange="getNewVal_receipt" />
</template>
<template v-if="activeKey == 4">
<test :allData="allInfo" />
<test :allData="allInfo" @valChange="getNewVal_test" />
</template>
<template v-if="activeKey == 5">
<peaks-method :allData="allInfo" />
<peaks-method :allData="allInfo" @valChange="getNewVal_peakMethod" />
</template>
<template v-if="activeKey == 6">
<peak-fit :tableData="allInfo.peakFit" />
<peak-fit :tableData="allInfo.peakFit" @valChange="getNewVal_peakFit"/>
</template>
<template v-if="activeKey == 7">
<g-analysis-methods :allData="allInfo" />
<g-analysis-methods :allData="allInfo" @valChange="getNewVal_analyMethod" />
</template>
<template v-if="activeKey == 8">
<peak-association :allData="allInfo" />
<peak-association :tableData="allInfo.Association" @valChange="getNewVal_association" />
</template>
<template v-if="activeKey == 9">
<references :allData="allInfo" />
<references :allData="allInfo" @valChange="getNewVal_reference" />
</template>
<template v-if="activeKey == 10">
<results :allData="allInfo" />
<results :allData="allInfo" @valChange="getNewVal_result" @listChange="getNewList_result" />
</template>
<template v-if="activeKey == 11">
<nuclide-ratios :allData="allInfo" />
<nuclide-ratios @valChange="getNewVal_coincidence" />
</template>
<template v-if="activeKey == 12">
<g-coincidence-correction />
<g-coincidence-correction @valChange="getNewVal_nuclide" />
</template>
<template v-if="activeKey == 13">
<mda />
<mda @valChange="getNewVal_mda"/>
</template>
<template v-if="activeKey == 14">
<conclusions :allData="allInfo" />
<conclusions :allData="allInfo" @valChange="getNewVal_conclusion" />
</template>
<template v-if="activeKey == 15">
<comment :allData="allInfo" />
<comment :allData="allInfo" @valChange="getNewVal_comment" />
</template>
</div>
</div>
@ -95,7 +95,7 @@ import GCoincidenceCorrection from './components/g_CoincidenceCorrection.vue'
import Mda from './components/MDA.vue'
import Conclusions from './components/Conclusions.vue'
import Comment from './components/Comment.vue'
import { getAction } from '@/api/manage'
import { getAction, postAction } from '@/api/manage'
import Custom from '@/views/account/settings/Custom.vue'
import SampleDataMixin from '@/views/spectrumAnalysis/SampleDataMixin'
@ -144,17 +144,159 @@ export default {
return {
isLoading: false,
activeKey: 0,
allInfo: {}
allInfo: {},
healderVal: {},
objVal: {},
collectVal: {},
receiptVal: {},
testVal: {},
peakMethodVal: {},
peakList: [],
analyMethodVal: {},
associationVal: [],
referenceVal: {},
resultVal: {},
resultList: [],
nuclideList: [],
coincidenceList: [],
mdaList: [],
conclusionVal: {},
commentVal: {},
fileName: ''
}
},
mounted () {
sessionStorage.removeItem("isCellEmpty")
},
methods: {
getNewVal_header(val) {
this.healderVal = val
},
getNewVal_obj(val) {
this.objVal = val
},
getNewVal_collect(val) {
this.collectVal = val
},
getNewVal_receipt(val) {
this.receiptVal = val
},
getNewVal_test(val) {
this.testVal = val
},
getNewVal_peakMethod(val) {
this.peakMethodVal = val
},
getNewVal_peakFit(val) {
this.peakList = val
},
getNewVal_analyMethod(val) {
this.analyMethodVal = val
},
getNewVal_association(val) {
this.associationVal = val
},
getNewVal_reference(val) {
this.referenceVal = val
},
getNewVal_result(val) {
this.resultVal = val
},
getNewList_result(val) {
this.resultList = val
},
getNewVal_nuclide(val) {
this.nuclideList = val
},
getNewVal_coincidence(val) {
this.coincidenceList = val
},
getNewVal_mda(val) {
this.mdaList = val
},
getNewVal_conclusion(val) {
this.conclusionVal = val
},
getNewVal_comment(val) {
this.commentVal = val
},
handleSave() {
let val = sessionStorage.getItem("isCellEmpty")
if (val=="false") {
if (!val||val=="false") {
this.visible = false
//
let params = {
header_msg_id:this.healderVal.msgId||this.allInfo.header_msg_id,
header_data_type:this.healderVal.dataType||this.allInfo.header_data_type,
header_priority_level:this.healderVal.priorityLevel||this.allInfo.header_priority_level,
header_station_code:this.healderVal.stationCode||this.allInfo.header_station_code,
header_srid:this.healderVal.srid||this.allInfo.header_srid,
header_lab_code:this.healderVal.labCode||this.allInfo.header_lab_code,
header_lab_detector:this.healderVal.labDetector||this.allInfo.header_lab_detector,
header_report_type:this.healderVal.reportType||this.allInfo.header_report_type,
header_report_number:this.healderVal.reportnumber||this.allInfo.header_report_number,
header_sample_category:this.healderVal.sampleCategory||this.allInfo.header_sample_category,
header_transmission: this.healderVal.transmission||this.allInfo.header_transmission,
Obj_purpose: this.objVal.objPurpose||this.allInfo.Obj_purpose,
Obj_authorized: this.objVal.objAuthorized||this.allInfo.Obj_authorized,
Obj_instruction: this.objVal.objInstruction||this.allInfo.Obj_instruction,
collect_start: this.collectVal.collectStart||this.allInfo.collect_start,
collect_stop: this.collectVal.collectStop||this.allInfo.collect_stop,
collect_airVolume: this.collectVal.collectAirVolume||this.allInfo.collect_airVolume,
Receipt_srid: this.receiptVal.receiptSrid||this.allInfo.Receipt_srid,
Receipt_sealNum: this.receiptVal.receiptSealNum||this.allInfo.Receipt_sealNum,
Receipt_sample_dateTime: this.receiptVal.receiptDateTime||this.allInfo.Receipt_sample_dateTime,
Receipt_package: this.receiptVal.receiptPackage||this.allInfo.Receipt_package,
Receipt_seal: this.receiptVal.receiptSeal||this.allInfo.Receipt_seal,
Receipt_sample: this.receiptVal.receiptSample||this.allInfo.Receipt_sample,
Test_type: this.testVal.testType||this.allInfo.Test_type,
Test_completion: this.testVal.testCompletion||this.allInfo.Test_completion,
Test_person: this.testVal.testPerson||this.allInfo.Test_person,
Test_purpose: this.testVal.testPurpose||this.allInfo.Test_purpose,
PeakMethod_software: this.peakMethodVal.peakMethodSoftware||this.allInfo.PeakMethod_software,
PeakMethod_location: this.peakMethodVal.peakMethodLocation||this.allInfo.PeakMethod_location,
peakFit: this.peakList.length>0?this.peakList:this.allInfo.peakFit,
AnalyMethod_software: this.analyMethodVal.analyMethodSoftware||this.allInfo.AnalyMethod_software,
AnalyMethod_nuclide: this.analyMethodVal.analyMethodNuclide||this.allInfo.AnalyMethod_nuclide,
AnalyMethod_baseline: this.analyMethodVal.analyMethodBaseline||this.allInfo.AnalyMethod_baseline,
AnalyMethod_lc: this.analyMethodVal.analyMethodLc||this.allInfo.AnalyMethod_lc,
AnalyMethod_calib: this.analyMethodVal.analyMethodCalib||this.allInfo.AnalyMethod_calib,
Association: this.associationVal.length>0?this.associationVal:this.allInfo.Association,
Reference_samplePHD: this.referenceVal.referenceSamplePHD||this.allInfo.Reference_samplePHD,
Reference_CalibPHD: this.referenceVal.referenceCalibPHD||this.allInfo.Reference_CalibPHD,
Reference_physical: this.referenceVal.referencePhysical||this.allInfo.Reference_physical,
Result_act_ref: this.resultVal.activityReferenceTime||this.allInfo.Result_act_ref,
Result_conc_ref: this.resultVal.Concentration||this.allInfo.Result_conc_ref,
Result: this.resultList.length>0?this.resultList:this.allInfo.Result,
NuclideRatios: this.nuclideList,
g_CoincidenceCorrection: this.coincidenceList,
mda: this.mdaList,
conclusion_person: this.conclusionVal.conclusionPerson||this.allInfo.conclusion_person,
Conclusion_IDC: this.conclusionVal.conclusionIDC||this.allInfo.Conclusion_IDC,
Conclusion_Lab: this.conclusionVal.conclusionLab||this.allInfo.Conclusion_Lab,
Conclusion_Res: this.conclusionVal.conclusionRes||this.allInfo.Conclusion_Res,
Comment: this.commentVal.comment||this.allInfo.Comment,
}
postAction("/gamma/exportRLR", params).then(res => {
const blob = new Blob([res])
let _this = this
this.$confirm({
title: 'Please enter file name',
content: h => <a-input v-model={_this.fileName} />,
okText: 'Cancle',
cancelText: 'Save',
okButtonProps: {style: {backgroundColor: "#b98326", color: "#fff", borderColor: "transparent"}},
cancelButtonProps: {style: {color: "#fff", backgroundColor: "#31aab0", borderColor: "transparent"}},
onOk() {
console.log('Cancel');
},
onCancel() {
if (_this.fileName) {
saveAs(blob, `${_this.fileName}.RLR`)
}
},
});
})
} else {
this.$message.warning("Please finishi ti edit new inserted row first.")
}