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

View File

@ -2,13 +2,13 @@
<div> <div>
<a-form-model :labelCol="{ style: { width: '240px' } }" :wrapperCol="{style:{ width: '300px' }}"> <a-form-model :labelCol="{ style: { width: '240px' } }" :wrapperCol="{style:{ width: '300px' }}">
<a-form-model-item label="Collection Start Time"> <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>
<a-form-model-item label="Collection Stop Time"> <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>
<a-form-model-item label="Total Air Volume Sampled[m3]"> <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-item>
</a-form-model> </a-form-model>
</div> </div>
@ -45,6 +45,11 @@ export default {
this.model.collectStop = this.allData.collect_stop; this.model.collectStop = this.allData.collect_stop;
this.model.collectAirVolume = this.allData.collect_airVolume; this.model.collectAirVolume = this.allData.collect_airVolume;
}, },
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
} }
</script> </script>

View File

@ -1,6 +1,6 @@
<template> <template>
<div> <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> </div>
</template> </template>
@ -31,6 +31,11 @@ export default {
mounted () { mounted () {
this.model.comment = this.allData.Comment; this.model.comment = this.allData.Comment;
}, },
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
} }
</script> </script>

View File

@ -2,16 +2,16 @@
<div> <div>
<a-form-model layout="vertical"> <a-form-model layout="vertical">
<a-form-model-item label="Person Responsible for the Test"> <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>
<a-form-model-item label="~IDCSummary"> <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>
<a-form-model-item label="~labsummary"> <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>
<a-form-model-item label="~ResultComparison"> <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-item>
</a-form-model> </a-form-model>
</div> </div>
@ -50,6 +50,11 @@ export default {
this.model.conclusionLab = this.allData.Conclusion_Lab; this.model.conclusionLab = this.allData.Conclusion_Lab;
this.model.conclusionRes = this.allData.Conclusion_Res; this.model.conclusionRes = this.allData.Conclusion_Res;
}, },
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
} }
</script> </script>

View File

@ -6,37 +6,37 @@
:wrapperCol="{ style: { width: '200px' } }" :wrapperCol="{ style: { width: '200px' } }"
> >
<a-form-model-item label="MSG_ID"> <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>
<a-form-model-item label="Data_Type"> <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>
<a-form-model-item label="Priority Level"> <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>
<a-form-model-item label="Station Code"> <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>
<a-form-model-item label="SRID"> <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>
<a-form-model-item label="Laboratory Code"> <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>
<a-form-model-item label="Laboratory Detector Code"> <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>
<a-form-model-item label="Report Type"> <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>
<a-form-model-item label="Report Number"> <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>
<a-form-model-item label="Sample Category"> <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>
<a-form-model-item label="Message Transmission Time"> <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-item>
</a-form-model> </a-form-model>
</div> </div>
@ -120,7 +120,12 @@ export default {
transmission: "", transmission: "",
} }
} }
} },
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
} }
</script> </script>

View File

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

View File

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

View File

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

View File

@ -1,11 +1,12 @@
<template> <template>
<div> <div>
<table-with-operators :columns="columns" :list="list" /> <table-with-operators :columns="columns" :list="list" @cellChange="handleCellChange" />
</div> </div>
</template> </template>
<script> <script>
import TableWithOperators from './TableWithOperators.vue' import TableWithOperators from './TableWithOperators.vue'
import { cloneDeep } from 'lodash'
const columns = [ const columns = [
{ {
title: 'Index', title: 'Index',
@ -16,13 +17,15 @@ const columns = [
{ {
title: 'Explanation Level(%)', title: 'Explanation Level(%)',
dataIndex: 'exLevel', dataIndex: 'exLevel',
align: 'center' align: 'center',
scopedSlots: { customRender: 'exLevel' }
}, },
{ {
title: 'Identified Nuclides', title: 'Identified Nuclides',
dataIndex: 'identified', dataIndex: 'identified',
align: 'center', align: 'center',
width: '60%' width: '60%',
scopedSlots: { customRender: 'identified' }
} }
] ]
@ -31,18 +34,22 @@ export default {
TableWithOperators TableWithOperators
}, },
props: { props: {
allData: { tableData: {
type: Object, type: Array,
default: ()=>{} default: ()=>[]
}, },
}, },
watch: { watch: {
allData: { tableData: {
handler(val) { handler(val, old) {
console.log(val); 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() { data() {
@ -51,8 +58,17 @@ export default {
list: [] list: []
} }
}, },
mounted () { methods: {
this.list = this.allData.Association 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> </script>

View File

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

View File

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

View File

@ -2,13 +2,13 @@
<div> <div>
<a-form-model layout="vertical"> <a-form-model layout="vertical">
<a-form-model-item label="~SAMPLEPHD"> <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>
<a-form-model-item label="~CALIBPHD"> <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>
<a-form-model-item label="~PhysicalConstants"> <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-item>
</a-form-model> </a-form-model>
</div> </div>
@ -45,6 +45,11 @@ export default {
this.model.referenceCalibPHD = this.allData.Reference_CalibPHD; this.model.referenceCalibPHD = this.allData.Reference_CalibPHD;
this.model.referencePhysical = this.allData.Reference_physical; this.model.referencePhysical = this.allData.Reference_physical;
}, },
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
} }
</script> </script>

View File

@ -2,78 +2,94 @@
<div> <div>
<a-form-model :labelCol="{ style: { width: '205px' } }"> <a-form-model :labelCol="{ style: { width: '205px' } }">
<a-form-model-item label="Activity Reference Time"> <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>
<a-form-model-item label="Concentration Reference Time"> <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-item>
</a-form-model> </a-form-model>
<div class="operators"> <!-- <div class="operators">
<a-button type="primary">Insert Before</a-button> <a-button type="primary">Insert Before</a-button>
<a-button type="primary">Insert After</a-button> <a-button type="primary">Insert After</a-button>
<a-button type="primary">Delete</a-button> <a-button type="primary">Delete</a-button>
</div> </div> -->
<a-table <table-with-operators :columns="columns" :list="list" @cellChange="handleCellChange" />
<!-- <a-table
:class="list.length ? 'has-data' : ''" :class="list.length ? 'has-data' : ''"
:columns="columns" :columns="columns"
:dataSource="list" :dataSource="list"
:pagination="false" :pagination="false"
:scroll="{ y: 370 }" :scroll="{ y: 370 }"
> >
</a-table> </a-table> -->
</div> </div>
</template> </template>
<script> <script>
import TableWithOperators from './TableWithOperators.vue'
import { cloneDeep } from 'lodash'
const columns = [ const columns = [
{ {
title: 'Nuclide', title: 'Nuclide',
dataIndex: 'nuclide', dataIndex: 'nuclide',
align: 'center' align: 'center',
scopedSlots: { customRender: 'nuclide' }
}, },
{ {
title: 'Activity(Bq)', title: 'Activity(Bq)',
dataIndex: 'activity', dataIndex: 'activity',
align: 'center' align: 'center',
scopedSlots: { customRender: 'activity' }
}, },
{ {
title: 'Act_err(%)', title: 'Act_err(%)',
dataIndex: 'actErr', dataIndex: 'actErr',
align: 'center' align: 'center',
scopedSlots: { customRender: 'actErr' }
}, },
{ {
title: 'Factor', title: 'Factor',
dataIndex: 'factor1', dataIndex: 'factor1',
align: 'center' align: 'center',
scopedSlots: { customRender: 'factor1' }
}, },
{ {
title: 'Confidence(%)', title: 'Confidence(%)',
dataIndex: 'confidence1', dataIndex: 'confidence1',
align: 'center' align: 'center',
scopedSlots: { customRender: 'confidence1' }
}, },
{ {
title: 'Conc.(Bq/m3)', title: 'Conc.(Bq/m3)',
dataIndex: 'conc', dataIndex: 'conc',
align: 'center' align: 'center',
scopedSlots: { customRender: 'conc' }
}, },
{ {
title: 'Conc_err', title: 'Conc_err',
dataIndex: 'concErr', dataIndex: 'concErr',
align: 'center' align: 'center',
scopedSlots: { customRender: 'concErr' }
}, },
{ {
title: 'Factor', title: 'Factor',
dataIndex: 'factor2', dataIndex: 'factor2',
align: 'center' align: 'center',
scopedSlots: { customRender: 'factor2' }
}, },
{ {
title: 'Confidence(%)', title: 'Confidence(%)',
dataIndex: 'confidence2', dataIndex: 'confidence2',
align: 'center' align: 'center',
scopedSlots: { customRender: 'confidence2' }
} }
] ]
export default { export default {
components: {
TableWithOperators
},
props: { props: {
allData: { allData: {
type: Object, type: Object,
@ -84,6 +100,12 @@ export default {
allData: { allData: {
handler(val) { handler(val) {
console.log(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, deep: true,
immediate:true immediate:true
@ -99,10 +121,20 @@ export default {
list: [] list: []
} }
}, },
mounted () { methods: {
this.model.activityReferenceTime = this.allData.Result_act_ref; handleValueChange(val) {
this.model.Concentration = this.allData.Result_conc_ref; this.$emit("valChange",this.model)
this.list = this.allData.Result },
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> </script>

View File

@ -6,25 +6,25 @@
:wrapperCol="{ style: { width: '300px' } }" :wrapperCol="{ style: { width: '300px' } }"
> >
<a-form-model-item label="Sample Reference Identification"> <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>
<a-form-model-item label="Seal Number"> <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>
<a-form-model-item label="Sample Receipt Time"> <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-item>
</a-form-model> </a-form-model>
<a-form-model layout="vertical"> <a-form-model layout="vertical">
<a-form-model-item label="~PackageCondition"> <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>
<a-form-model-item label="~SealCondition"> <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>
<a-form-model-item label="~SampleCondition"> <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-item>
</a-form-model> </a-form-model>
</div> </div>
@ -67,6 +67,11 @@ export default {
this.model.receiptSeal = this.allData.Receipt_seal; this.model.receiptSeal = this.allData.Receipt_seal;
this.model.receiptSample = this.allData.Receipt_sample; this.model.receiptSample = this.allData.Receipt_sample;
}, },
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
} }
</script> </script>

View File

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

View File

@ -2,16 +2,16 @@
<div> <div>
<a-form-model layout="vertical"> <a-form-model layout="vertical">
<a-form-model-item label="Type of Test Performed"> <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>
<a-form-model-item label="Test Completion Date"> <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>
<a-form-model-item label="Person Responsible for the Test"> <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>
<a-form-model-item label="Purpose of Test Performed"> <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-item>
</a-form-model> </a-form-model>
</div> </div>
@ -50,6 +50,11 @@ export default {
this.model.testPerson = this.allData.Test_person; this.model.testPerson = this.allData.Test_person;
this.model.testPurpose = this.allData.Test_purpose; this.model.testPurpose = this.allData.Test_purpose;
}, },
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
} }
</script> </script>

View File

@ -2,19 +2,19 @@
<div> <div>
<a-form-model layout="vertical"> <a-form-model layout="vertical">
<a-form-model-item label="Software Used"> <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>
<a-form-model-item label="~NuclidesMethod"> <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>
<a-form-model-item label="~BaselineMethod"> <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>
<a-form-model-item label="~LCMethod"> <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>
<a-form-model-item label="CalibrationMethod"> <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-item>
</a-form-model> </a-form-model>
</div> </div>
@ -55,6 +55,11 @@ export default {
this.model.analyMethodLc = this.allData.AnalyMethod_lc; this.model.analyMethodLc = this.allData.AnalyMethod_lc;
this.model.analyMethodCalib = this.allData.AnalyMethod_calib; this.model.analyMethodCalib = this.allData.AnalyMethod_calib;
}, },
methods: {
handleValueChange(val) {
this.$emit("valChange",this.model)
}
},
} }
</script> </script>

View File

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

View File

@ -17,52 +17,52 @@
<h4>{{ tabs[activeKey] }}</h4> <h4>{{ tabs[activeKey] }}</h4>
<div class="rlr-content-detail"> <div class="rlr-content-detail">
<template v-if="activeKey == 0"> <template v-if="activeKey == 0">
<c-header :allData="allInfo" /> <c-header :allData="allInfo" @valChange="getNewVal_header" />
</template> </template>
<template v-if="activeKey == 1"> <template v-if="activeKey == 1">
<Objective :allData="allInfo" /> <Objective :allData="allInfo" @valChange="getNewVal_obj" />
</template> </template>
<template v-if="activeKey == 2"> <template v-if="activeKey == 2">
<collection :allData="allInfo" /> <collection :allData="allInfo" @valChange="getNewVal_collect" />
</template> </template>
<template v-if="activeKey == 3"> <template v-if="activeKey == 3">
<sample-receipt :allData="allInfo" /> <sample-receipt :allData="allInfo" @valChange="getNewVal_receipt" />
</template> </template>
<template v-if="activeKey == 4"> <template v-if="activeKey == 4">
<test :allData="allInfo" /> <test :allData="allInfo" @valChange="getNewVal_test" />
</template> </template>
<template v-if="activeKey == 5"> <template v-if="activeKey == 5">
<peaks-method :allData="allInfo" /> <peaks-method :allData="allInfo" @valChange="getNewVal_peakMethod" />
</template> </template>
<template v-if="activeKey == 6"> <template v-if="activeKey == 6">
<peak-fit :tableData="allInfo.peakFit" /> <peak-fit :tableData="allInfo.peakFit" @valChange="getNewVal_peakFit"/>
</template> </template>
<template v-if="activeKey == 7"> <template v-if="activeKey == 7">
<g-analysis-methods :allData="allInfo" /> <g-analysis-methods :allData="allInfo" @valChange="getNewVal_analyMethod" />
</template> </template>
<template v-if="activeKey == 8"> <template v-if="activeKey == 8">
<peak-association :allData="allInfo" /> <peak-association :tableData="allInfo.Association" @valChange="getNewVal_association" />
</template> </template>
<template v-if="activeKey == 9"> <template v-if="activeKey == 9">
<references :allData="allInfo" /> <references :allData="allInfo" @valChange="getNewVal_reference" />
</template> </template>
<template v-if="activeKey == 10"> <template v-if="activeKey == 10">
<results :allData="allInfo" /> <results :allData="allInfo" @valChange="getNewVal_result" @listChange="getNewList_result" />
</template> </template>
<template v-if="activeKey == 11"> <template v-if="activeKey == 11">
<nuclide-ratios :allData="allInfo" /> <nuclide-ratios @valChange="getNewVal_coincidence" />
</template> </template>
<template v-if="activeKey == 12"> <template v-if="activeKey == 12">
<g-coincidence-correction /> <g-coincidence-correction @valChange="getNewVal_nuclide" />
</template> </template>
<template v-if="activeKey == 13"> <template v-if="activeKey == 13">
<mda /> <mda @valChange="getNewVal_mda"/>
</template> </template>
<template v-if="activeKey == 14"> <template v-if="activeKey == 14">
<conclusions :allData="allInfo" /> <conclusions :allData="allInfo" @valChange="getNewVal_conclusion" />
</template> </template>
<template v-if="activeKey == 15"> <template v-if="activeKey == 15">
<comment :allData="allInfo" /> <comment :allData="allInfo" @valChange="getNewVal_comment" />
</template> </template>
</div> </div>
</div> </div>
@ -95,7 +95,7 @@ import GCoincidenceCorrection from './components/g_CoincidenceCorrection.vue'
import Mda from './components/MDA.vue' import Mda from './components/MDA.vue'
import Conclusions from './components/Conclusions.vue' import Conclusions from './components/Conclusions.vue'
import Comment from './components/Comment.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 Custom from '@/views/account/settings/Custom.vue'
import SampleDataMixin from '@/views/spectrumAnalysis/SampleDataMixin' import SampleDataMixin from '@/views/spectrumAnalysis/SampleDataMixin'
@ -144,17 +144,159 @@ export default {
return { return {
isLoading: false, isLoading: false,
activeKey: 0, activeKey: 0,
allInfo: {} allInfo: {},
healderVal: {},
objVal: {},
collectVal: {},
receiptVal: {},
testVal: {},
peakMethodVal: {},
peakList: [],
analyMethodVal: {},
associationVal: [],
referenceVal: {},
resultVal: {},
resultList: [],
nuclideList: [],
coincidenceList: [],
mdaList: [],
conclusionVal: {},
commentVal: {},
fileName: ''
} }
}, },
mounted () { mounted () {
sessionStorage.removeItem("isCellEmpty") sessionStorage.removeItem("isCellEmpty")
}, },
methods: { 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() { handleSave() {
let val = sessionStorage.getItem("isCellEmpty") let val = sessionStorage.getItem("isCellEmpty")
if (val=="false") { if (!val||val=="false") {
this.visible = 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 { } else {
this.$message.warning("Please finishi ti edit new inserted row first.") this.$message.warning("Please finishi ti edit new inserted row first.")
} }