@@ -148,58 +154,62 @@
import ModalMixin from '@/mixins/ModalMixin'
import TitleOverBorder from '../TitleOverBorder.vue'
import { getAction, postAction } from '@/api/manage'
-import * as XLSX from 'xlsx';
+import * as XLSX from 'xlsx'
+import EditCell from './EditCell.vue'
const columns = [
{
title: 'Energy',
dataIndex: 'energy',
scopedSlots: {
- customRender: 'energy'
- }
+ customRender: 'energy',
+ },
},
{
title: 'Total Efficiency',
dataIndex: 'totalEffi',
scopedSlots: {
- customRender: 'totalEffi'
- }
+ customRender: 'totalEffi',
+ },
},
{
title: 'Peak Efficiency',
dataIndex: 'peakEffi',
scopedSlots: {
- customRender: 'peakEffi'
- }
+ customRender: 'peakEffi',
+ },
},
{
title: 'Uncertainty(%)',
dataIndex: 'uncertain',
scopedSlots: {
- customRender: 'uncertain'
- }
- }
+ customRender: 'uncertain',
+ },
+ },
]
const outputColumns = [
{
title: 'Energy',
dataIndex: 'energy',
- customRender: (text) => parseFloat(Number(text).toPrecision(6))
+ scopedSlots: { customRender: 'energy' },
+ // customRender: (text) => parseFloat(Number(text).toPrecision(6))
},
{
title: 'Correct Factor',
dataIndex: 'correctFactor',
- customRender: (text) => parseFloat(Number(text).toPrecision(6))
+ scopedSlots: { customRender: 'correctFactor' },
+ // customRender: (text) => parseFloat(Number(text).toPrecision(6)),
},
{
title: 'Uncertainty(%)',
dataIndex: 'uncertainty',
- customRender: (text) => parseFloat(Number(text).toPrecision(6))
- }
+ scopedSlots: { customRender: 'uncertainty' },
+ // customRender: (text) => parseFloat(Number(text).toPrecision(6)),
+ },
]
export default {
- components: { TitleOverBorder },
+ components: { TitleOverBorder, EditCell },
mixins: [ModalMixin],
data() {
this.columns = columns
@@ -217,7 +227,7 @@ export default {
filterWord: '', // 筛选
fileName: '', // save excel name
- analyseData: {} // 分析结果
+ analyseData: {}, // 分析结果
}
},
methods: {
@@ -245,7 +255,7 @@ export default {
totalEf3: 0.111096,
totalEf4: -0.003896,
totalEf5: -0.000345,
- totalEf6: 0.000017
+ totalEf6: 0.000017,
}
this.efficiency = {
@@ -254,7 +264,7 @@ export default {
effciency3: 0.583265,
effciency4: -0.065884,
effciency5: 0.003255,
- effciency6: -0.000059
+ effciency6: -0.000059,
}
this.getInfo()
@@ -269,9 +279,9 @@ export default {
const { success, result, message } = await postAction('/gamma/KorSumInput', {
...this.totalEffi,
...this.efficiency,
- energys: this.list.map(item => item.energy)
+ energys: this.list.map((item) => item.energy),
})
- console.log(success);
+ console.log(success)
if (success) {
this.list = result
} else {
@@ -285,18 +295,18 @@ export default {
// 分析
async handleAnalyze() {
console.log('%c [ 分析 ]-178', 'font-size:13px; background:pink; color:#bf2c9f;')
- try {
+ try {
this.isLoading = true
const { success, result, message } = await postAction('/gamma/KorSumAnalyse', this.list)
this.isLoading = false
if (success) {
- this.analyseData = result
- console.log(result);
+ this.analyseData = result
+ console.log(result)
} else {
this.$message.error(message)
}
} catch (error) {
- this.isLoading = false;
+ this.isLoading = false
console.error(error)
}
},
@@ -308,73 +318,84 @@ export default {
// output栏点击左侧列表
handleOutputItemClick(item) {
- if(!this.analyseData) {
- this.$message.error("Analyse Fail!")
- return false;
+ if (!this.analyseData) {
+ this.$message.error('Analyse Fail!')
+ return false
}
this.selectedItem = item
- this.outputTableList = [];
+ this.outputTableList = []
// 根据核素名获取结果集
- let data = this.analyseData[this.selectedItem]
- if(!data || data.energy.length < 1) {
- this.$message.error("Analyse Fail!")
- return false;
+ let data = this.analyseData[this.selectedItem]
+ if (!data || data.energy.length < 1) {
+ this.$message.error('Analyse Fail!')
+ return false
}
-
- let result = [];
- for(let i = 0; i < data.energy.length; i++ ) {
+
+ let result = []
+ for (let i = 0; i < data.energy.length; i++) {
// 将数据进行填充并
let obj = {
- "energy": data.energy[i],
- "correctFactor" : data.factor[i],
- "uncertainty" : (data.factor[i] - 1) / 10 * 100
+ energy: data.energy[i],
+ correctFactor: data.factor[i],
+ uncertainty: ((data.factor[i] - 1) / 10) * 100,
}
- result.push(obj);
+ result.push(obj)
}
-
- this.outputTableList = result;
+
+ this.outputTableList = result
+ },
+ onCellChange(idx, label, value) {
+ console.log(this.outputTableList)
+ console.log(value)
+ const dataSource = [...this.outputTableList]
+ const target = dataSource.find((item, index) => index == idx)
+ if (target) {
+ target[label] = value
+ this.outputTableList = dataSource
+ }
+ console.log(this.outputTableList)
},
// 导出到excel
handleExport() {
console.log('%c [ 导出到excel ]-246', 'font-size:13px; background:pink; color:#bf2c9f;')
let _this = this
- this.$confirm({
- title: 'Please enter file name',
- content: (h) =>
,
- 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() {
- console.log(_this.fileName);
- if (_this.fileName) {
- // saveAs(blob, `${_this.fileName}`)
- // 创建工作簿
- const workbook = XLSX.utils.book_new();
-
- // 创建工作表
- const worksheet = XLSX.utils.json_to_sheet(_this.outputTableList);
-
- // 将工作表添加到工作簿
- XLSX.utils.book_append_sheet(workbook, worksheet, 'Sheet1');
-
- // 导出Excel文件
- XLSX.writeFile(workbook, _this.fileName + ".xlsx");
- }
- },
- })
- }
+ this.$confirm({
+ title: 'Please enter file name',
+ content: (h) =>
,
+ 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() {
+ console.log(_this.fileName)
+ if (_this.fileName) {
+ // saveAs(blob, `${_this.fileName}`)
+ // 创建工作簿
+ const workbook = XLSX.utils.book_new()
+
+ // 创建工作表
+ const worksheet = XLSX.utils.json_to_sheet(_this.outputTableList)
+
+ // 将工作表添加到工作簿
+ XLSX.utils.book_append_sheet(workbook, worksheet, 'Sheet1')
+
+ // 导出Excel文件
+ XLSX.writeFile(workbook, _this.fileName + '.xlsx')
+ }
+ },
+ })
+ },
},
computed: {
outputList() {
- return this.nuclideList.filter(item => item.toLowerCase().includes(this.filterWord.toLowerCase()))
- }
- }
+ return this.nuclideList.filter((item) => item.toLowerCase().includes(this.filterWord.toLowerCase()))
+ },
+ },
}