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