From 8270696d8c0ac14e47e341ddabf65acfb5a10a6b Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期六, 03 八月 2024 11:31:30 +0800
Subject: [PATCH] Merge branch 'master' of http://114.132.189.42:9002/r/center-lims-before into master
---
src/components/view/b1-report-preparation.vue | 2
src/components/do/b1-inspect-order-plan/Inspection.vue | 53 ++++++++++++++---
src/components/tool/onlyoffice.vue | 2
src/components/do/b6-device-management/b6-data-acquisition-config.vue | 112 ++++++++++++++++++++++++++++++-------
4 files changed, 136 insertions(+), 33 deletions(-)
diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue
index cf3a9cd..8bd547b 100644
--- a/src/components/do/b1-inspect-order-plan/Inspection.vue
+++ b/src/components/do/b1-inspect-order-plan/Inspection.vue
@@ -226,6 +226,9 @@
display: flex;
align-items: center;
}
+ .custom-dialog .el-dialog__body {
+ max-width: 1000px; /* 璁剧疆鏈�澶у搴� */
+ }
</style>
<template>
<div v-loading="loading" class="inspection">
@@ -784,7 +787,7 @@
<el-button type="primary" @click="submit()">纭� 瀹�</el-button>
</span>
</el-dialog>
- <el-dialog title="鏁版嵁閲囬泦" :visible.sync="dataGetDia" min-width="400px" :close-on-click-modal="false" :close-on-press-escape="false" :show-close="false">
+ <el-dialog title="鏁版嵁閲囬泦-璁$畻鏁版嵁閫夋嫨" :visible.sync="dataGetDia" :close-on-click-modal="false" :close-on-press-escape="false" :show-close="false" custom-class="custom-dialog">
<div>
<table border="1" cellpadding="10" class="thermal-table">
<tr>
@@ -796,19 +799,19 @@
<tr>
<td :rowspan="item.child.length">{{item.faName}}</td>
<td>{{ item.child[0].name }}</td>
- <td>
+ <td style="text-align: left;">
<el-checkbox-group
- v-model="getDataIndex">
+ v-model="getDataIndex" :max="item.child[0].maxNum">
<el-checkbox v-for="(n,j) in item.child[0].arr" :label="j" :key="j+'ppppppppp'">{{n}}</el-checkbox>
</el-checkbox-group>
</td>
</tr>
<tr v-for="(m,i) in item.child" :key="i+'bbbbbbbbbbbbbb'" v-show="i>0">
<td>{{ m.name }}</td>
- <td>
+ <td style="text-align: left;">
<el-checkbox-group
- v-model="getDataIndex">
- <el-checkbox v-for="(n,j) in m.arr" :label="j" :key="j+'bbbbbbbbbbbbbb'">{{n}}</el-checkbox>
+ v-model="getDataIndex" :max="m.maxNum">
+ <el-checkbox v-for="(n,j) in m.arr" :label="j" :key="j+'bbbbbbbbbbbbbb'" >{{n}}</el-checkbox>
</el-checkbox-group>
</td>
</tr>
@@ -1273,16 +1276,48 @@
child:[]
}
for(let j in data[i]){
- console.log(j,data[i][j])
if(j!='frequency'&&data[i][j]&&!data[i][j].isCalculation){
this.dataAcquisitionInfo[i+','+j] = {
value:data[i][j].result,
frequency:data[i].frequency
}
}else if(j!='frequency'&&data[i][j]&&data[i][j].isCalculation){
+ let str0 = i+','+j
+ let list = this.tableList[0].arr
+ let maxNum = 0
+ list.forEach((item,index)=>{
+ let num0 = 0;
+ let str = ''
+ item.forEach(m=>{
+ if(m.v.ps&&(m.v.ps.value=='妫�楠屽瓙椤�'||m.v.ps.value=='妫�楠岄」')){
+ if(m.v.ps&&m.v.ps.value=='妫�楠岄」'){
+ if(num0==0){
+ str = m.v.v+','
+ num0++
+ }
+ }
+ if(m.v.ps&&m.v.ps.value=='妫�楠屽瓙椤�'){
+ if(num0==1){
+ str = str+m.v.v
+ }
+ }
+ let num = 0;
+ list[index].forEach(n=>{
+ if(n.v.ps&&n.v.ps.value&&typeof n.v.ps.value == 'string'&&n.v.ps.value.includes('妫�楠屽��')){
+ num++
+ }
+ })
+ if(str0==str){
+ maxNum = num
+ }
+ }
+ })
+ })
+ console.log(44444444444,maxNum)
let obj0 = {
name:j,
- arr:data[i][j].result
+ arr:data[i][j].result,
+ maxNum:maxNum
}
obj.child.push(obj0)
}
@@ -1336,7 +1371,7 @@
this.getDataIndex.sort((a, b) => a - b);
for (let i in this.dataAcquisitionInfoNew){
for(let j in this.dataAcquisitionInfoNew[i]){
- if(j!='frequency'&&this.dataAcquisitionInfoNew[i][j].isCalculation){
+ if(j!='frequency'&&this.dataAcquisitionInfoNew[i]&&this.dataAcquisitionInfoNew[i][j]&&this.dataAcquisitionInfoNew[i][j].isCalculation){
let arr = []
for(let k = 0;k<this.dataAcquisitionInfoNew[i][j].result.length;k++){
if(this.getDataIndex.includes(k)){
diff --git a/src/components/do/b6-device-management/b6-data-acquisition-config.vue b/src/components/do/b6-device-management/b6-data-acquisition-config.vue
index 322ba4d..a1c0f07 100644
--- a/src/components/do/b6-device-management/b6-data-acquisition-config.vue
+++ b/src/components/do/b6-device-management/b6-data-acquisition-config.vue
@@ -87,23 +87,9 @@
<el-form-item class="fomItemInput1">
<template v-slot="label">
鍏紡锛�
- <el-tooltip class="itemFomItem" effect="dark" content="姹傚弬鏁版渶澶у�硷紝鍙傛暟涓暟鏈�灏戜袱涓紝濡傦細MAX(A1,B2)" placement="top">
- <label>MAX()</label>
- </el-tooltip>
- <el-tooltip class="itemFomItem" effect="dark" content="姹傚弬鏁版渶灏忓�硷紝鍙傛暟涓暟鏈�灏戜袱涓紝濡傦細MIN(A1,B2)" placement="top">
- <label>MIN()</label>
- </el-tooltip>
- <el-tooltip class="itemFomItem" effect="dark" content="姹傚拰锛屽弬鏁颁釜鏁版渶灏戜袱涓紝濡傦細SUM(A1,B2)" placement="top">
- <label>SUM()</label>
- </el-tooltip>
- <el-tooltip class="itemFomItem" effect="dark" content="姹傜粷瀵瑰�硷紝鍙傛暟涓暟鏈�灏戜竴涓紝濡傦細ABS(A1)" placement="top">
- <label>ABS()</label>
- </el-tooltip>
- <el-tooltip class="itemFomItem" effect="dark" content="姹傚钩鍧囧�硷紝鍙傛暟涓暟鏈�灏戜袱涓釜锛屽锛欰VERAGE(A1,B2)" placement="top">
- <label>AVERAGE()</label>
- </el-tooltip>
- <el-tooltip class="itemFomItem" effect="dark" content="姹備腑鍊硷紝鍙傛暟涓暟鏈�灏戜袱涓釜锛屽锛歁EDIAN(A1,B2)" placement="top">
- <label>MEDIAN()</label>
+ <el-tooltip v-for="(formula, key) in formulas" class="itemFomItem" effect="dark" :content="formula.content" :key="key"
+ placement="top">
+ <label>{{ formula.label }}()</label>
</el-tooltip>
<el-input type="textarea" autosi:autosize="{ minRows: 2, maxRows: 4}" ze placeholder="璇疯緭鍏ュ唴瀹�"
v-model="configForm.formula" @change="evalResult">
@@ -184,6 +170,32 @@
data() {
// 杩欓噷瀛樻斁鏁版嵁
return {
+ formulas: [
+ {
+ label: "MAX",
+ content: "姹傚弬鏁版渶澶у�硷紝鍙傛暟涓暟鏈�灏戜袱涓紝濡傦細MAX(A1,B2)"
+ },
+ {
+ label: "MIN",
+ content: "姹傚弬鏁版渶灏忓�硷紝鍙傛暟涓暟鏈�灏戜袱涓紝濡傦細MIN(A1,B2)"
+ },
+ {
+ label: "SUM",
+ content: "姹傚拰锛屽弬鏁颁釜鏁版渶灏戜袱涓紝濡傦細SUM(A1,B2)"
+ },
+ {
+ label: "ABS",
+ content: "姹傜粷瀵瑰�硷紝鍙傛暟涓暟鏈�灏戜竴涓紝濡傦細ABS(A1)"
+ },
+ {
+ label: "AVERAGE",
+ content: "姹傚钩鍧囧�硷紝鍙傛暟涓暟鏈�灏戜袱涓釜锛屽锛欰VERAGE(A1,B2)"
+ },
+ {
+ label: "MEDIAN",
+ content: "姹備腑鍊硷紝鍙傛暟涓暟鏈�灏戜袱涓釜锛屽锛歁EDIAN(A1,B2)"
+ },
+ ],
dialogVisible4: false,
tableList: [],
page: {
@@ -192,7 +204,12 @@
},
dialogVisible3: false,
configForm: {
- formula: ""
+ formula: "",
+ collectUrl: "",
+ storageUrl: "",
+ entrustCode: "",
+ sampleCode: "",
+ dbFileName: ""
},
domains: [
{
@@ -338,6 +355,21 @@
this.$set(this.configForm, "collectUrl", this.tableList[0].collectUrl);
this.$set(this.configForm, "storageUrl", this.tableList[0].storageUrl);
this.$set(this.configForm, "ip", this.tableList[0].ip);
+ this.$set(
+ this.configForm,
+ "entrustCode",
+ this.tableList[0].entrustCode
+ );
+ this.$set(
+ this.configForm,
+ "sampleCode",
+ this.tableList[0].sampleCode
+ );
+ this.$set(
+ this.configForm,
+ "dbFileName",
+ this.tableList[0].dbFileName
+ );
}
},
init() {
@@ -352,7 +384,17 @@
.then(res => {
this.tableList = res.data;
this.tableList.forEach(i => {
- // replace(/=/g, ' ')
+ let isIncludes = false
+ if (i.formula && i.formula != "") {
+ this.formulas.forEach(j => {
+ if (i.formula.includes(j.label)) {
+ isIncludes = true
+ }
+ })
+ }
+ if (!isIncludes && i.formula) {
+ i.formula = i.formula.slice(1, -1)
+ }
i.sample = i.sample
.replace(/"/g, "")
.replace(/],/g, "锛�")
@@ -457,7 +499,7 @@
)
.then(res => {
if (res.code == 200) {
- this.tableList = res.data;
+ // this.tableList = res.data;
this.dialogVisible4 = false;
this.init();
this.$message.success("鎿嶄綔鎴愬姛");
@@ -492,7 +534,21 @@
const data = res.data;
if (data[0]) {
this.domains.splice(0, 1);
- this.$set(this.configForm, "formula", data[0].formula);
+ let formula = data[0].formula
+ let isIncludes = false
+ if (formula && formula != "") {
+ for (let key in this.formulas) {
+ if (formula.includes(this.formulas[key].label)) {
+ isIncludes = true
+ }
+ }
+ }
+ if (!isIncludes && formula) {
+ let formulaValue = formula.slice(1, -1)
+ this.$set(this.configForm, "formula", formulaValue);
+ } else {
+ this.$set(this.configForm, "formula", data[0].formula);
+ }
data.forEach(i => {
this.domains.push({
referx: i.referx,
@@ -516,7 +572,19 @@
}
});
this.domains.forEach((i, index) => {
- i.formula = this.configForm.formula;
+ let isIncludes = false
+ if (this.configForm.formula && this.configForm.formula != "") {
+ for (let formula in this.formulas) {
+ if (this.configForm.formula.includes(this.formulas[formula].label)) {
+ isIncludes = true
+ }
+ }
+ }
+ if (isIncludes === false) {
+ i.formula = "(" + this.configForm.formula + ")";
+ } else {
+ i.formula = this.configForm.formula;
+ }
i.deviceId = this.deviceId;
i.inspectionItem = this.configForm.inspectionItem;
i.inspectionItemSubclass = this.configForm.inspectionItemSubclass;
diff --git a/src/components/tool/onlyoffice.vue b/src/components/tool/onlyoffice.vue
index 209b12a..1371068 100644
--- a/src/components/tool/onlyoffice.vue
+++ b/src/components/tool/onlyoffice.vue
@@ -97,7 +97,7 @@
lang: option.lang, //璇█璁剧疆
//瀹氬埗
customization: {
- autosave: false, //鏄惁鑷姩淇濆瓨
+ autosave: true, //鏄惁鑷姩淇濆瓨
chat: true,
comments: false,
help: false,
diff --git a/src/components/view/b1-report-preparation.vue b/src/components/view/b1-report-preparation.vue
index 8230629..4d86d78 100644
--- a/src/components/view/b1-report-preparation.vue
+++ b/src/components/view/b1-report-preparation.vue
@@ -128,7 +128,7 @@
<i class="el-icon-full-screen" style="cursor: pointer;font-size: 18px" @click="fullscreen=true;" v-if="!fullscreen"></i>
<img src="../../../static/img/no-full.svg" alt="" v-else style="cursor: pointer;" @click="fullscreen=false;" >
</div>
- <div style="height: 80vh;">
+ <div style="height: 80vh;" v-if="issuedVisible">
<onlyoffice ref="onlyoffice" :options="option" style="width: 100%;height: 100%;" />
</div>
<span slot="footer" class="dialog-footer">
--
Gitblit v1.9.3