¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <el-dialog :close-on-press-escape="false" |
| | | :visible.sync="isShow" |
| | | custom-class="unPassCheck" |
| | | title="ä¸åæ ¼å¤æµ" |
| | | width="90%" |
| | | @close="$emit('closeUnPassCheckDialog')"> |
| | | <div v-loading="loading" class="inspection"> |
| | | <!-- <el-row class="title">--> |
| | | <!-- <el-col :span="24" style="text-align: right;">--> |
| | | <!-- <el-button size="small" type="primary" @click="addVerifyDia = true" v-if="state==1">æäº¤</el-button>--> |
| | | <!-- </el-col>--> |
| | | <!-- </el-row>--> |
| | | <div class="center"> |
| | | <div class="search" style="text-align: left;display: flex;align-items: center;justify-content: space-between;"> |
| | | <div style="display: flex;align-items: center;"> |
| | | <span v-if="tableList.length>0">æ£éªæ¨¡æ¿ï¼</span> |
| | | <el-radio-group v-model="currentTable" size="small"> |
| | | <el-radio-button v-for="(item,index) in tableLists" :key="index" :label="item.templateId" |
| | | size="small">{{ item.templateName }}</el-radio-button> |
| | | </el-radio-group> |
| | | </div> |
| | | <div style="display: flex;align-items: center;"> |
| | | <span v-if="typeSource == '1'"> 夿µæ¬¡æ°ï¼</span> |
| | | <el-select v-if="typeSource == '1'" v-model="retestTag" |
| | | placeholder="è¯·éæ©" |
| | | size="small" @change="m=>handleChangeCableTag(currentSample.id,4, 'cableTag', m)"> |
| | | <el-option |
| | | v-for="item in unPassNumList" |
| | | :key="item.retestTag" |
| | | :label="item.retestTag" |
| | | :value="item.retestTag"> |
| | | </el-option> |
| | | </el-select> |
| | | </div> |
| | | </div> |
| | | <!-- å¸¸è§æ£éªåå§è®°å½ --> |
| | | <div id="tableBox" v-loading="tableLoading" class="center-box"> |
| | | <table v-for="(item,index) in tableList" :key="index+currentTable+currentSample.id" border="1" cellpadding="10" class="tables"> |
| | | <tbody> |
| | | <tr v-for="(m,i) in item.arr" :key="i"> |
| | | <td v-for="(n,j) in m" v-if="n.v.mc==undefined || Object.keys(n.v.mc).length === 4" :id='item.templateId+"-"+n.i+"-"+n.r+"-"+n.c' |
| | | :key="j" :colspan="n.v.mc&&n.v.mc.cs?n.v.mc.cs:1" |
| | | :rowspan="n.v.mc&&n.v.mc.rs?n.v.mc.rs:1" |
| | | :style="`background:${n.v.bg?n.v.bg:''};color:${n.v.fc};font-size:${n.v.fs}px;width:${handleWidth(n)}px !important;height:${item.style.rowlen[n.r]}px;font-wight:${n.v.bl?'bold':''};`"> |
| | | <div :class="`content-h-${n.v.ht} content-v-${n.v.vt}`" :style="`width:${handleWidth(n)}px !important;min-height:${item.style.rowlen[n.r]}px;`" |
| | | class="content"> |
| | | <template v-if="n.v.ps!=undefined && typeof n.v.ps.value ==='string'&& n.v.ps.value.includes('æ£éªå¼') && state==1"> |
| | | <el-input v-if="getInspectionValueType(n.i) == 1" :key="'abc-'+'000'+index+'000'+i+'000'+j" v-model="n.v.v" |
| | | :disabled="(getInspectionItemType(n.i) == 1 && !dataAcquisitionEidtAble )|| (n.u != userId && n.u != undefined && n.u != '')" |
| | | class="table_input" |
| | | @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`, n,'getDataType')" @input="handleInput(n)" @mousewheel.native.prevent |
| | | @keydown.enter="changeInput('',`${item.templateId}-${n.r}-${n.c}-${n.i}`, n, 'getDataType')"> |
| | | </el-input> |
| | | <el-input v-else-if="getInspectionValueType(n.i) == 2" v-model="n.v.v" :disabled="getInspectionItemType(n.i) == 1 || (n.u != userId && n.u != undefined && n.u != '')" |
| | | class="table_input" |
| | | type="textarea" |
| | | @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`,n,'getDataType')" /> |
| | | <!-- <el-select v-else-if="getInspectionValueType(n.i) == 5" v-model="n.v.v" :disabled="state>1||getInspectionItemType(n.i) == 1 || (n.u != userId && n.u != undefined && n.u != '')"--> |
| | | <!-- class="table_input" @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`,n,'getDataType')"--> |
| | | <!-- @visible-change="e=>getDic(e,n.i)">--> |
| | | <!-- <el-option v-for="(e, i) in enumList" :key="i" :label="e.label" :value="e.value"></el-option>--> |
| | | <!-- </el-select>--> |
| | | <span v-else-if="getInspectionValueType(n.i) == 4" |
| | | :style="`font-family:${n.v.ff} !important;`">/</span> |
| | | </template> |
| | | <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='ç»è®º'"> |
| | | <el-select v-if="(getInspectionValueType(n.i) == 2 || getInspectionValueType(n.i) == 5) && state==1&&PROJECT=='è£
å¤çµç¼'" |
| | | v-model="n.v.v" class="table_input" @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`, n,'getDataType')"> |
| | | <el-option :value="1" label="åæ ¼"></el-option> |
| | | <el-option :value="0" label="ä¸åæ ¼"></el-option> |
| | | <el-option :value="3" label="ä¸å¤å®"></el-option> |
| | | <el-option :value="2" label="å¾
å®"></el-option> |
| | | </el-select> |
| | | <template v-if="state > 1"> |
| | | <span v-if="n.v.v===1" :style="`font-family:${n.v.ff} !important;color: green;`">åæ ¼</span> |
| | | <span v-else-if="n.v.v===0" :style="`font-family:${n.v.ff} !important;color: red;`">ä¸åæ ¼</span> |
| | | <span v-else-if="n.v.v===3" :style="`font-family:${n.v.ff} !important;color: #3A7BFA;`">ä¸å¤å®</span> |
| | | <span v-else :style="`font-family:${n.v.ff} !important;`">å¾
å®</span> |
| | | </template> |
| | | <template v-if="getInspectionValueType(n.i) != 2 && state==1"> |
| | | <span v-if="n.v.v===1" :style="`font-family:${n.v.ff} !important;color: green;`">åæ ¼</span> |
| | | <span v-else-if="n.v.v===0" :style="`font-family:${n.v.ff} !important;color: red;`">ä¸åæ ¼</span> |
| | | <span v-else-if="n.v.v===3" :style="`font-family:${n.v.ff} !important;color: #3A7BFA;`">ä¸å¤å®</span> |
| | | <span v-else :style="`font-family:${n.v.ff} !important;`">å¾
å®</span> |
| | | </template> |
| | | </template> |
| | | <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='设å¤ç¼ç ' && state==1"> |
| | | <span>{{ n.v.v }}</span> |
| | | </template> |
| | | <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='设å¤åç§°'"> |
| | | <el-select v-model="n.v.v" :disabled="state>1" |
| | | class="table_input" filterable |
| | | multiple |
| | | placeholder="设å¤" remote @change="(val)=>changeEquip(val, n)" |
| | | @visible-change="e=>getEquipOptions(e,n.i)"> |
| | | <el-option v-for="item in equipOptions" :key="item.value" :label="item.label" :value="item.value"> |
| | | {{item.label + '--' +item.value}} |
| | | </el-option> |
| | | </el-select> |
| | | </template> |
| | | <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='è¦æ±å¼' && state==1"> |
| | | <span :style="`font-family:${n.v.ff} !important;`">{{getTell(n.i)}}</span> |
| | | </template> |
| | | <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='计ç®å¼' && state==1"><span :style="`font-family:${n.v.ff} !important;`">{{ toFixed(n.v.v,n.v.ct) }}</span></template> |
| | | <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='æç»å¼' && state==1"> |
| | | <span :style="`font-family:${n.v.ff} !important;`">{{ toFixed(n.v.v,n.v.ct) }}</span> |
| | | </template> |
| | | <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='æ ·åç¼å·'"> |
| | | <div :title="currentSample.sampleCode" style="display: flex;flex-wrap: nowrap;align-items: center;width: 100%"> |
| | | <i v-if="!currentFiberOpticTape&&!currentFiberOptic" class="el-icon-caret-left table_caret" style="width: 16px;" @click="caretSample(-1)"></i> |
| | | <div :style="`font-family:${n.v.ff} !important;overflow: hidden;white-space: nowrap;width: calc(100% - 32px);`">{{currentSample.sampleCode}}</div> |
| | | <i v-if="!currentFiberOpticTape&&!currentFiberOptic" class="el-icon-caret-right table_caret" |
| | | style="width: 16px;" @click="caretSample(1)"></i> |
| | | </div> |
| | | </template> |
| | | <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='æ ·ååå·'"> |
| | | <div v-if="currentSample.model!==undefined&¤tSample.model!==null" :style="`font-family:${n.v.ff} !important;`">{{currentSample.model}}</div> |
| | | </template> |
| | | <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='å¥ç®¡'"> |
| | | <div style="display: flex;flex-wrap: nowrap;align-items: center;"> |
| | | <div :style="`font-family:${n.v.ff} !important;`">{{currentBushing?currentBushing.color:''}}</div> |
| | | </div> |
| | | </template> |
| | | <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='å
纤带'"> |
| | | <div style="display: flex;flex-wrap: nowrap;align-items: center;"> |
| | | <i v-if="currentFiberOpticTape" class="el-icon-caret-left table_caret" @click="caretTape(-1) |
| | | "></i> |
| | | <div :style="`font-family:${n.v.ff} !important;`">{{currentFiberOpticTape?currentFiberOpticTape.code:''}}</div> |
| | | <i v-if="currentFiberOpticTape" |
| | | class="el-icon-caret-right table_caret" |
| | | @click="caretTape(1)"></i> |
| | | </div> |
| | | </template> |
| | | <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='å
纤'"> |
| | | <div style="display: flex;flex-wrap: nowrap;align-items: center;"> |
| | | <i v-if="currentFiberOptic" class="el-icon-caret-left table_caret" |
| | | @click="caretOptic(-1)"></i> |
| | | <div :style="`font-family:${n.v.ff} !important;`">{{currentFiberOptic?currentFiberOptic.color:''}} |
| | | </div> |
| | | <i |
| | | v-if="currentFiberOptic" class="el-icon-caret-right table_caret" @click="caretOptic(1)"></i> |
| | | </div> |
| | | </template> |
| | | <span v-else :style="`font-family:${n.v.ff} !important;`" v-html="getValue(n.v)" ></span> |
| | | </div> |
| | | </td> |
| | | </tr> |
| | | </tbody> |
| | | </table> |
| | | </div> |
| | | </div> |
| | | <el-dialog :visible.sync="reviewDia" title="æ£éªå¤æ ¸" width="500px"> |
| | | <div v-if="reviewDia" class="body" style="display: flex;padding: 10px;"> |
| | | <div class="search_label" style="width: 150px;"><span class="required-span">* </span>ä¸éè¿ççç±ï¼</div> |
| | | <div class="search_input" style="width: 100%;"> |
| | | <el-input v-model="noReason" :autosize="{ minRows: 4}" clearable size="small" type="textarea"></el-input> |
| | | </div> |
| | | </div> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="reviewDia = false">å æ¶</el-button> |
| | | <el-button :loading="reviewLoading" type="primary" @click="handleReviewDia">ç¡® å®</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | <el-dialog :visible.sync="addVerifyDia" title="æå®å¤æ ¸äººå" width="400px"> |
| | | <div class="body" style="display: flex;padding: 10px;align-items: center;"> |
| | | <div class="search_label" style="width: 150px;"><span class="required-span">*</span>夿 ¸äºº</div> |
| | | <div class="search_input" style="width: 100%;"> |
| | | <el-select v-model="verifyUser" clearable filterable placeholder="è¯·éæ©" size="small" style="width: 100%;"> |
| | | <el-option v-for="(item,i) in personList" :key="i" :label="item.label" :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </div> |
| | | </div> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="addVerifyDia = false">å æ¶</el-button> |
| | | <el-button :loading="submitLoading" type="primary" @click="submit()">ç¡® å®</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | <el-dialog :close-on-click-modal="false" :close-on-press-escape="false" :show-close="false" :visible.sync="dataGetDia" custom-class="custom-dialog" title="æ°æ®éé"> |
| | | <div> |
| | | <table border="1" cellpadding="10" class="thermal-table"> |
| | | <tr> |
| | | <td style="width: 120px;">æ£éªé¡¹</td> |
| | | <td style="width: 120px;">æ£éªå项</td> |
| | | <td>æ°éæ°æ®</td> |
| | | </tr> |
| | | <template v-for="(item,index) in getData"> |
| | | <tr> |
| | | <td :rowspan="item.child.length">{{item.faName}}</td> |
| | | <td>{{ item.child[0].name }}</td> |
| | | <td style="text-align: left;"> |
| | | <el-checkbox-group |
| | | v-model="getDataIndex" :max="item.child[0].maxNum"> |
| | | <el-checkbox v-for="(n,j) in item.child[0].arr" :key="j" :label="j">{{n}}</el-checkbox> |
| | | </el-checkbox-group> |
| | | </td> |
| | | </tr> |
| | | <tr v-for="(m,i) in item.child" v-show="i>0" :key="i+'bbbbbbbbbbbbbb'"> |
| | | <td>{{ m.name }}</td> |
| | | <td style="text-align: left;"> |
| | | <el-checkbox-group |
| | | v-model="getDataIndex" :max="m.maxNum"> |
| | | <el-checkbox v-for="(n,j) in m.arr" :key="j" :label="j">{{n}}</el-checkbox> |
| | | </el-checkbox-group> |
| | | </td> |
| | | </tr> |
| | | </template> |
| | | </table> |
| | | </div> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button :loading="getDataIndexLoading" type="primary" @click="submitDataGet()">ç¡® å®</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | <UnPassDialog v-if="unPassDialog" ref="unPassDialog" |
| | | :orderId="orderId" |
| | | :unPassDialog="unPassDialog" |
| | | @resetForm="resetForm"></UnPassDialog> |
| | | <el-dialog :close-on-click-modal="false" :visible.sync="addCheck" |
| | | title="æå®æ¥åå®¡æ ¸äººå" |
| | | width="400px" |
| | | @close="closeAddVerifyDia"> |
| | | <div class="body" style="display: flex;padding: 10px;align-items: center;"> |
| | | <div class="search_label" style="width: 150px;"><span class="required-span">*</span>å®¡æ ¸äººï¼</div> |
| | | <div class="search_input" style="width: 100%;"> |
| | | <el-select v-model="checkUser" clearable filterable placeholder="è¯·éæ©" size="small" style="width: 100%;"> |
| | | <el-option v-for="(item,i) in personList" :key="i" :label="item.label" :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </div> |
| | | </div> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="closeAddVerifyDia">å æ¶</el-button> |
| | | <el-button :loading="reviewLoading" type="primary" @click="upInsReview(1)">ç¡® å®</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | </div> |
| | | </el-dialog> |
| | | </template> |
| | | |
| | | <script> |
| | | // import ValueTable from '../../tool/value-table.vue' |
| | | import file from '@/utils/file' |
| | | import excelFunction from '@/utils/excelFountion' |
| | | import UnPassDialog from "@/views/business/unpass/components/unPassDialog.vue"; |
| | | import AddUnPass from "@/views/business/unpass/components/addUnPass.vue"; |
| | | import { |
| | | checkSubmitPlan, |
| | | doInsOrder, |
| | | getInsProductUnqualifiedRetest, |
| | | search, selectUserCondition, |
| | | submitPlan, |
| | | verifyPlan |
| | | } from "@/api/business/inspectionTask"; |
| | | import {getUserNow, saveUnqualifiedContext} from "@/api/business/rawMaterialOrder"; |
| | | export default { |
| | | props: ['sonLaboratory', 'orderId', 'state','inspectorList','typeSource', 'unPassCheck', 'rawMaterialTag'], |
| | | components: { |
| | | AddUnPass, |
| | | UnPassDialog |
| | | }, |
| | | data() { |
| | | return { |
| | | isShow: this.unPassCheck, |
| | | sagData: [], |
| | | sagForm: { |
| | | sampleCode: null, |
| | | model: null, |
| | | inspection: null, |
| | | methodName: null, |
| | | tensileForce: null, |
| | | spanLength: null, |
| | | load: null |
| | | }, |
| | | dataGetDia:false, |
| | | wareTableDataLoading:false, |
| | | fileAdd:false, |
| | | submitLoading: false, |
| | | searchForm: { |
| | | sampleName: null, |
| | | state: null |
| | | }, |
| | | id: 0, |
| | | componentData0: { |
| | | entity: { |
| | | insOrderId:'' |
| | | }, |
| | | isIndex: true, |
| | | showSelect: false, |
| | | select: false, |
| | | sort: false, |
| | | init:false, |
| | | do: [ |
| | | { |
| | | id: 'handleDown', |
| | | font: 'ä¸è½½', |
| | | type: 'text', |
| | | method: 'handleDown' |
| | | },{ |
| | | id: 'delete', |
| | | font: 'å é¤', |
| | | type: 'text', |
| | | method: 'doDiy', |
| | | disabFun: (row, index) => { |
| | | return this.state!=1 |
| | | } |
| | | } |
| | | ], |
| | | isPage: false, |
| | | linkEvent: {}, |
| | | tagField: { |
| | | type:{ |
| | | select:[ |
| | | { |
| | | value: 1, |
| | | label: 'å¾ç' |
| | | }, |
| | | { |
| | | value: 2, |
| | | label: 'æä»¶' |
| | | } |
| | | ] |
| | | } |
| | | }, |
| | | currentId: '', |
| | | selectField: {}, |
| | | requiredAdd: [], |
| | | requiredUp: [] |
| | | }, |
| | | changeType:null, |
| | | getReportModelLoading:false, |
| | | insOrder: {}, |
| | | sampleProduct: [], |
| | | typeList: [], |
| | | urgentList: [], |
| | | currentSample: {}, //å½åæ ·åä¿¡æ¯ |
| | | tableList: [], |
| | | loading: false, |
| | | ps: {}, |
| | | param: {}, |
| | | currentKey0: 1, |
| | | currentKey1: 1, |
| | | currentKey2: 1, |
| | | comparisonList: [], |
| | | excelMethodList: [], |
| | | equipOptions: [], |
| | | userId: 0, |
| | | reviewLoading: false, |
| | | reviewDia: false, |
| | | noReason: '', |
| | | tableWidth: 1000, |
| | | currentTable: null, |
| | | tableLists: [], |
| | | widthList: [], |
| | | addVerifyDia: false, |
| | | verifyUser: null, |
| | | personList: [], |
| | | enumList: [], |
| | | tableLoading:false, |
| | | upLoading:false, |
| | | temptList:null, |
| | | currentTab:null, |
| | | wareForm:{ |
| | | inspectionItem:1, |
| | | inspectionItemSubclass:'20(常温)', |
| | | }, |
| | | wareForm0:{}, |
| | | numOptions:[], |
| | | temperatureOptions:[], |
| | | wareTableData:[], |
| | | otherForm:{ |
| | | humidity:null, |
| | | temperature:null, |
| | | }, |
| | | equipForm:{ |
| | | value0:null, |
| | | code0:null, |
| | | value1:null, |
| | | code1:null, |
| | | }, |
| | | result: null, |
| | | worker: null, |
| | | worker0: null, |
| | | wareLength:[], |
| | | dataAcquisitionInfo:{}, |
| | | dataAcquisitionInfoNew:{}, |
| | | dataAcquisitionEidtAble:false, |
| | | isGet:false, |
| | | dataAcquisitionLoading:false, |
| | | collected:false, |
| | | // ç循ç¯---å¼å§ |
| | | thermalCyclingInfo:{ |
| | | max:0, |
| | | inspectionItem:1, |
| | | arr:[], |
| | | length:1, |
| | | inspectionItemClass:null, |
| | | }, |
| | | thermalCyclingLoading:false, |
| | | temDataAcquisition:false, |
| | | getData:[ |
| | | { |
| | | faName:'æ³¢é¿éå è¡°å', |
| | | child:[ |
| | | { |
| | | name:'1285nm~1330nm', |
| | | arr:[12,13,14,15], |
| | | }, |
| | | { |
| | | name:'1525nm~1575nm', |
| | | arr:[12,13,14,15], |
| | | }, |
| | | ] |
| | | }, |
| | | { |
| | | faName:'æªè³æ³¢é¿', |
| | | child:[ |
| | | { |
| | | name:'æªè³æ³¢é¿', |
| | | arr:[12,13,14,15], |
| | | } |
| | | ] |
| | | } |
| | | ], |
| | | getDataIndex:[], |
| | | getDataIndexLoading:false, |
| | | getDataTypeId:'', |
| | | getDataType:null, |
| | | unPassDialog: false, // ä¸åæ ¼å¤çå¼¹æ¡ |
| | | retestTag: '', // 夿µæ¬¡æ° |
| | | addCheck: false, // æå®å®¡æ ¸äººåå¼¹æ¡ |
| | | checkUser: '', |
| | | type: '', |
| | | unPassNumList: [ |
| | | {retestTag: '1'}, |
| | | {retestTag: '2'}, |
| | | ], |
| | | } |
| | | }, |
| | | // ç¨äºä¸ä¼ æä»¶çä¿¡æ¯ |
| | | computed: { |
| | | headers() { |
| | | return { |
| | | 'token': sessionStorage.getItem('token') |
| | | } |
| | | }, |
| | | action() { |
| | | return this.javaApi + "/insOrderPlan/uploadFile"; |
| | | } |
| | | }, |
| | | created() { |
| | | this.id = this.orderId; |
| | | this.getUserInfo() |
| | | }, |
| | | mounted() { |
| | | this.getTypeDicts() // è·åç´§æ¥ç¨åº¦ä¸ææ¡é项 |
| | | this.getInsStateDicts() |
| | | this.getComparisonList() |
| | | this.getAuthorizedPerson() |
| | | this.startWorker() |
| | | }, |
| | | watch: { |
| | | // çå¬ä»»å¡idï¼è·åä»»å¡ä¿¡æ¯ |
| | | id(val) { |
| | | this.loading = true |
| | | doInsOrder({ |
| | | id: val, |
| | | laboratory: this.sonLaboratory |
| | | }).then(async res => { |
| | | this.insOrder = res.data.insOrder; |
| | | this.componentData0.entity.insOrderId = val; |
| | | this.urgentList.forEach(m => { |
| | | if (m.value == this.insOrder.type) { |
| | | this.insOrder.typeName = m.label |
| | | } |
| | | }) |
| | | if(!res.data.sampleProduct||res.data.sampleProduct.length==0){ |
| | | return this.$message.error('è¯¥ä»»å¡æ²¡ææ ·åä¿¡æ¯') |
| | | } |
| | | // èµå¼å½åæ ·åå表 |
| | | this.sampleProduct = res.data.sampleProduct |
| | | this.currentSample = this.HaveJson(this.sampleProduct[0]) |
| | | let insProduct = this.HaveJson(this.currentSample.insProduct) |
| | | // æ¸©åº¦ãæ¹¿åº¦èµå¼ |
| | | this.otherForm = { |
| | | temperature:this.insOrder.temperature?this.insOrder.temperature:null, |
| | | humidity:this.insOrder.humidity?this.insOrder.humidity:null, |
| | | } |
| | | if (this.typeSource == '1') { |
| | | this.retestTag = '1' |
| | | } |
| | | this.getEquipOptions(1) |
| | | // è·åå½åæ ·åçæ£éªé¡¹ |
| | | let list = await this.getCurrentProduct(this.currentSample.id,0) |
| | | if (list === undefined) { |
| | | this.$message.warning('ææ ä¸åæ ¼å¤æµæ°æ®') |
| | | this.$emit('closeUnPassCheckDialog') |
| | | return |
| | | } |
| | | this.currentSample.insProduct = this.HaveJson(list) |
| | | // åå§åä¼ éå°å端çåæ° |
| | | this.param = {} |
| | | this.changeType = 0; |
| | | this.currentSample.insProduct.forEach(a => { |
| | | // æ¯å¦ä¸ºæåçµç¼ä¸çæ¾å¥ç®¡é¡¹ç®ï¼ä¸æ¯åæ§è¡åå§å |
| | | if(this.handleCasing(a.inspectionItem)){ |
| | | this.param[a.id] = { |
| | | insValue: [], |
| | | comValue: [], |
| | | resValue: null, |
| | | equipValue: [], |
| | | equipName: [], |
| | | insResult: null |
| | | } |
| | | } |
| | | }) |
| | | await this.determineWhetherToCollectData()//æ¯å¦éè¦æ°é |
| | | if (this.currentSample.index == undefined) this.currentSample['index'] = 1 |
| | | let bushing = this.currentSample.bushing |
| | | this.getTableLists();//å¤ç模æ¿åè¡¨ä¿¡æ¯ |
| | | this.loading = false |
| | | |
| | | }) |
| | | }, |
| | | // çå¬å½å模æ¿åå |
| | | currentTable(val1, val0) { |
| | | if (val0 != null && val1 != val0) { |
| | | if(this.changeType&&this.changeType>0){ |
| | | // 妿æ¯å
纤ãå
纤带ï¼å䏿§è¡ä¸é¢æä½ |
| | | return |
| | | } |
| | | this.tableLists.forEach(async (m, i) => { |
| | | if (m.templateId == val1) { |
| | | let list = await this.getCurrentProduct(this.currentSample.id,0) |
| | | this.currentSample.insProduct = this.HaveJson(list)//èµå¼å½åæ ·åçæ£éªé¡¹ |
| | | this.param = {}//åå§åä¼ å°å端çåæ° |
| | | this.currentSample.insProduct.forEach((a, j) => { |
| | | if(this.handleCasing(a.inspectionItem)){ |
| | | this.param[a.id] = { |
| | | insValue: [], |
| | | comValue: [], |
| | | resValue: null, |
| | | equipValue: [], |
| | | equipName: [], |
| | | insResult: null |
| | | } |
| | | } |
| | | }) |
| | | // å»é模æ¿ï¼è¿åæå ä¸ªæ¨¡æ¿ |
| | | const mySet1 = new Set(); |
| | | this.tableLists = this.currentSample.insProduct.filter(m => { |
| | | let num0 = mySet1.size; |
| | | if (m.templateId != null&&m.template != null) { |
| | | try { |
| | | mySet1.add(JSON.stringify({ |
| | | template: m.template, |
| | | templateId: m.templateId |
| | | })) |
| | | } catch (error) { |
| | | console.log(222,error); |
| | | } |
| | | } |
| | | let num1 = mySet1.size; |
| | | if (num1 > num0) { |
| | | return m |
| | | } |
| | | }); |
| | | if (this.tableLists && this.tableLists.length > 0) { |
| | | this.tableList = null; |
| | | this.tableList = this.tableLists.filter(m => m.templateId == val1) |
| | | // 对模æ¿è¿è¡å¤ç |
| | | this.handleTableData() |
| | | } |
| | | } |
| | | }) |
| | | } |
| | | }, |
| | | // ç¹æ®æ£éªé¡¹--çå¬è®¾å¤ä¿¡æ¯æ¹å |
| | | equipForm:{ |
| | | deep:true, |
| | | handler(val){ |
| | | if(this.tableLists.find(m=>m.templateId==this.currentTable)&&(this.tableLists.find(m=>m.templateId==this.currentTable).templateName=='æ¸©åº¦å¾ªç¯æ£éªåå§è®°å½'||this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('ç循ç¯')||this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('温åè¯éª'))&&this.equipOptions&&this.equipOptions.length>0){ |
| | | // åå§å设å¤ä¿¡æ¯ |
| | | this.param[this.currentSample.insProduct[0].id].equipValue = [] |
| | | this.param[this.currentSample.insProduct[0].id].equipName = [] |
| | | if(this.equipForm.code0){ |
| | | // èµå¼ç¬¬ä¸ä¸ªè®¾å¤çä¿¡æ¯ |
| | | this.equipForm.value0 = this.equipOptions.find(m=>m.value==this.equipForm.code0).label |
| | | this.param[this.currentSample.insProduct[0].id].equipValue.push({ |
| | | i:this.currentSample.insProduct[0].id, |
| | | v:{ |
| | | v:this.equipForm.code0 |
| | | } |
| | | }) |
| | | this.param[this.currentSample.insProduct[0].id].equipName.push({ |
| | | i:this.currentSample.insProduct[0].id, |
| | | v:{ |
| | | v:this.equipForm.value0 |
| | | } |
| | | }) |
| | | } |
| | | if(this.equipForm.code1){ |
| | | // èµå¼ç¬¬äºä¸ªè®¾å¤çä¿¡æ¯ |
| | | this.equipForm.value1 = this.equipOptions.find(m=>m.value==this.equipForm.code1).label |
| | | this.param[this.currentSample.insProduct[0].id].equipValue.push({ |
| | | i:this.currentSample.insProduct[0].id, |
| | | v:{ |
| | | v:this.equipForm.code1 |
| | | } |
| | | }) |
| | | this.param[this.currentSample.insProduct[0].id].equipName.push({ |
| | | i:this.currentSample.insProduct[0].id, |
| | | v:{ |
| | | v:this.equipForm.value1 |
| | | } |
| | | }) |
| | | } |
| | | // ä¿åæ°æ® |
| | | this.saveInsContext() |
| | | } |
| | | } |
| | | }, |
| | | }, |
| | | beforeDestroy() { |
| | | // å¨ç»ä»¶éæ¯åç¡®ä¿åæ¢ Workerï¼é¿å
å
åæ³æ¼ |
| | | this.stopWorker(); |
| | | }, |
| | | methods: { |
| | | closeAddVerifyDia () { |
| | | this.addCheck = false |
| | | this.checkUser = '' |
| | | }, |
| | | // å
³éä¸åæ ¼å¤çå¼¹æ¡ |
| | | resetForm () { |
| | | this.$refs.unPassDialog.$refs['unPassForm'].resetFields(); |
| | | this.unPassDialog = false |
| | | }, |
| | | handleDataAcquisition(data){ |
| | | // æ¯å¦å¯ä»¥ç¼è¾æ°éæ°æ® |
| | | if(this.dataAcquisitionEidtAble){ |
| | | this.getDataType = 1; |
| | | }else{ |
| | | this.getDataType = 2; |
| | | } |
| | | this.dataAcquisitionInfo = {} |
| | | this.getData = [] |
| | | for (let i in data){ |
| | | let obj = { |
| | | faName:i, |
| | | child:[] |
| | | } |
| | | // å¾ªç¯æ°éæ°æ® |
| | | for(let j in data[i]){ |
| | | // æ¼æ¥å符串 æ£éªé¡¹+æ£éªå项 |
| | | let str0 = '' |
| | | if(i==j){ |
| | | str0 = i+',' |
| | | }else{ |
| | | str0 = i+','+j |
| | | } |
| | | if(j!='frequency'&&data[i][j]&&(!data[i][j].result||typeof data[i][j].result == 'string')){ |
| | | // å¤çæ°éä¿¡æ¯æ ¼å¼ |
| | | this.dataAcquisitionInfo[str0] = { |
| | | value:data[i][j].result, |
| | | frequency:data[i].frequency |
| | | } |
| | | let list = this.tableList[0].arr |
| | | // 循ç¯é¡µé¢å表信æ¯ï¼å¤ææ°éæ°æ®å¯¹åºé¡µé¢å表信æ¯çæ£éªé¡¹æ¯åªä¸ªï¼å¹¶ç»å½åæ£éªé¡¹ç»å®è®¾å¤ä¿¡æ¯ |
| | | 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 |
| | | } |
| | | } |
| | | } |
| | | // ç»å®è®¾å¤ä¿¡æ¯ |
| | | if(data[i][j].equipName&&data[i][j].equipValue&&m.v&&m.v.ps&&m.v.ps.value=='设å¤åç§°'&&str0==str){ |
| | | if(!m.v.v){ |
| | | this.changeEquip(data[i][j].equipValue,m,data[i][j].equipName) |
| | | } |
| | | } |
| | | }) |
| | | }) |
| | | }else if(j!='frequency'&&data[i][j]&&Array.isArray(data[i][j].result)){ |
| | | // 妿è¿åçæ°éæ°æ®æ¯æ°ç»ï¼åå¤çæ°ç» |
| | | // 以ä¸é»è¾ä¸ºè·åæ¯ä¸ªæ£éªé¡¹å¯è¾å
¥çæ£éªå¼çæå¤§ä¸ªæ° |
| | | let str0 = '' |
| | | if(i==j){ |
| | | str0 = i+',' |
| | | }else{ |
| | | 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 |
| | | } |
| | | } |
| | | // ç»å®è®¾å¤ |
| | | if(data[i][j].equipName&&data[i][j].equipValue&&m.v&&m.v.ps&&m.v.ps.value=='设å¤åç§°'&&str0==str){ |
| | | if(!m.v.v){ |
| | | this.changeEquip(data[i][j].equipValue,m,data[i][j].equipName) |
| | | } |
| | | } |
| | | }) |
| | | }) |
| | | // è·å尿大æ£éªå¼è¾å
¥ä¸ªæ°åéç»æ°æ® |
| | | let obj0 = { |
| | | name:j, |
| | | arr:data[i][j].result, |
| | | maxNum:maxNum, |
| | | value:[] |
| | | } |
| | | // 妿æ°éè¿åçæ°ç»é¿åº¦å¤§äºæå¤§è¾å
¥ä¸ªæ°ï¼åå°æ°éæ°æ®å¨å¼¹æ¡ä¸å±ç¤ºï¼ç¨æ·éæ©éè¦æå¨éæ©æ°éçä¿¡æ¯ |
| | | if(data[i][j].result&&Array.isArray(data[i][j].result)&&data[i][j].result.length>maxNum){ |
| | | obj.child.push(obj0) |
| | | }else{ |
| | | this.dataAcquisitionInfo[str0] = { |
| | | value:data[i][j].result |
| | | } |
| | | } |
| | | } |
| | | } |
| | | if(obj.child.length>0){ |
| | | this.getData.push(obj) |
| | | } |
| | | } |
| | | // 妿å卿°éè¿åçæ°ç»é¿åº¦å¤§äºæå¤§è¾å
¥ä¸ªæ°ï¼åå¼¹åºå¼¹æ¡éæ© |
| | | if(this.getData.length>0){ |
| | | this.dataGetDia = true |
| | | this.getDataIndex = [] |
| | | }else{ |
| | | // 妿é½ä¸åå¨ï¼åï¼è¿å
¥å¤çæ°é线ç¨éå»å¤çæ°æ® |
| | | try { |
| | | // å Worker åéæ¶æ¯ï¼å¼å§å¤çé»è¾ |
| | | this.getDataIndexLoading = false |
| | | this.dataGetDia = false |
| | | this.getDataTypeId = '' |
| | | this.worker0.postMessage(JSON.stringify({ |
| | | dataAcquisitionInfo: this.dataAcquisitionInfo, |
| | | list:this.tableList[0].arr |
| | | })); |
| | | } catch (error) { |
| | | console.log(1111,error); |
| | | } |
| | | } |
| | | // çå¬ Worker è¿åçç»æ |
| | | this.worker0.onmessage = (event) => { |
| | | let result = JSON.parse(event.data); |
| | | if(result.method=='changeInput'){ |
| | | // ééåçæ°æ®ï¼éè¦è¿è¡è®¡ç®ç线ç¨è¿è¡è®¡ç® |
| | | let {list,n} = result.value |
| | | this.$set(this.tableList[0],'arr',list) |
| | | this.changeInput('',`${this.currentSample.insProduct[0].templateId}-${n.r}-${n.c}-${n.i}`,n) |
| | | }else if(result.getDataTypeId){ |
| | | // è·åå°æ°éæåä¸é¡¹ï¼æ£éªé¡¹çID |
| | | this.getDataTypeId = result.getDataTypeId |
| | | } |
| | | }; |
| | | }, |
| | | // 妿å卿°éè¿åçæ°ç»é¿åº¦å¤§äºæå¤§è¾å
¥ä¸ªæ°ï¼åå¼¹åºå¼¹æ¡éæ©ï¼è¿éæ¯å¼¹æ¡çæäº¤ |
| | | submitDataGet(){ |
| | | if(this.getDataIndex.length==0){ |
| | | this.$message.error('è¯·éæ©éè¦ééçæ°æ®') |
| | | return |
| | | } |
| | | this.getDataIndex.sort((a, b) => a - b); |
| | | for (let i=0;i<this.getData.length;i++){ |
| | | for(let j=0;j<this.getData[i].child.length;j++){ |
| | | // å¯¹ç¨æ·éæ©çæ°éä¿¡æ¯è¿è¡å¤çï¼èµå¼ |
| | | let arr = [] |
| | | for(let k=0;k<this.getDataIndex.length;k++){ |
| | | arr.push( this.dataAcquisitionInfoNew[this.getData[i].faName][this.getData[i].child[j].name].result[this.getDataIndex[k]]) |
| | | } |
| | | this.dataAcquisitionInfoNew[this.getData[i].faName][this.getData[i].child[j].name].result = arr |
| | | } |
| | | } |
| | | this.getDataIndexLoading = true |
| | | // èµå¼å®æåéè¦å次è¿å
¥å¤çæ°é线ç¨éå»å¤çæ°æ® |
| | | this.handleDataAcquisition(this.dataAcquisitionInfoNew) |
| | | }, |
| | | // å¤çº¿ç¨ |
| | | startWorker() { |
| | | if (this.worker) { |
| | | this.stopWorker(); // ç¡®ä¿ä¹åç Worker 已忢 |
| | | } |
| | | // å建 Worker å®ä¾ |
| | | this.worker = new Worker('/static/js/worker.js'); |
| | | if (this.worker0) { |
| | | this.stopWorker(); // ç¡®ä¿ä¹åç Worker 已忢 |
| | | } |
| | | // å建 Worker å®ä¾ |
| | | this.worker0 = new Worker('/static/js/worker0.js'); |
| | | }, |
| | | // 忢å¤çº¿ç¨ |
| | | stopWorker() { |
| | | if (this.worker) { |
| | | this.worker.terminate(); |
| | | this.worker = null; |
| | | } |
| | | if (this.worker0) { |
| | | this.worker0.terminate(); |
| | | this.worker0 = null; |
| | | } |
| | | }, |
| | | // æ ¹æ®ç±»åãä»»å¡idãå®éªå®¤æ¥è·åæ ·åçæ£éªé¡¹ä¿¡æ¯ |
| | | async getCurrentProduct(id,type,cableTag){ |
| | | this.tableLoading = true; |
| | | type = this.typeSource == '1' ? 5 : type |
| | | this.type = type |
| | | const params = { |
| | | id: id, |
| | | type: type, |
| | | laboratory: this.sonLaboratory, |
| | | retestTag: this.retestTag, |
| | | rawMaterialTag: this.rawMaterialTag, |
| | | } |
| | | let res = getInsProductUnqualifiedRetest(params) |
| | | if (res.code === 200 && res.data.length > 0) { |
| | | this.tableLoading = false; |
| | | this.scrollInit() |
| | | return res.data |
| | | } |
| | | }, |
| | | // æ¾å¥ç®¡ç夿\妿changeTypeä¸çäº3é£ä¹é¡µé¢ä¸å±ç¤ºæ¾å¥ç®¡æ£éªé¡¹ |
| | | handleCasing(inspectionItem){ |
| | | if(this.changeType!=3){ |
| | | if(inspectionItem.includes('æ¾å¥ç®¡')){ |
| | | return false |
| | | }else{ |
| | | return true |
| | | } |
| | | }else{ |
| | | return true |
| | | } |
| | | }, |
| | | async handleChangeCableTag(m,type, num, m2){ |
| | | let cableTag = '' |
| | | if (num === 'cableTag') { |
| | | cableTag = m2 |
| | | } |
| | | if (!m2) { |
| | | type = 0 |
| | | } |
| | | this.changeType = type |
| | | if(m){ |
| | | let list = await this.getCurrentProduct(m,type, cableTag) |
| | | if(list.length>0){ |
| | | this.param = {} |
| | | list.forEach(a => { |
| | | this.param[a.id] = { |
| | | insValue: [], |
| | | comValue: [], |
| | | resValue: null, |
| | | equipValue: [], |
| | | equipName: [], |
| | | insResult: null |
| | | } |
| | | }) |
| | | this.getTableLists0(list) |
| | | this.worker.postMessage(JSON.stringify({ |
| | | type: 'saveData', |
| | | tableList:this.tableList, |
| | | param:this.param, |
| | | currentTable:this.currentTable, |
| | | bushing:m |
| | | })); |
| | | }else{ |
| | | this.tableLists = [] |
| | | this.tableList = [] |
| | | this.$message.error('æ£éªé¡¹ä¸ºç©º') |
| | | } |
| | | } |
| | | }, |
| | | // åå
¸è·åä¿¡æ¯ |
| | | getTypeDicts() { |
| | | this.getDicts("urgency_level").then((response) => { |
| | | this.urgentList = this.dictToValue(response.data); |
| | | }); |
| | | }, |
| | | // åå
¸è·åä¿¡æ¯ |
| | | getInsStateDicts() { |
| | | this.getDicts("inspection_task_state").then((response) => { |
| | | this.typeList = this.dictToValue(response.data); |
| | | }) |
| | | }, |
| | | // åå
¸è·åä¿¡æ¯ |
| | | getComparisonList() { |
| | | this.getDicts("coordinate_transformation").then((response) => { |
| | | this.comparisonList = this.dictToValue(response.data); |
| | | }); |
| | | }, |
| | | // å¤ç页é¢åè¡¨æ°æ®--å»é,çææ£éªæ¨¡æ¿åæ¢å表 |
| | | getTableLists() { |
| | | const mySet1 = new Set(); |
| | | this.tableLists = this.currentSample.insProduct.filter(m => { |
| | | let num0 = mySet1.size; |
| | | if (m.templateId != null&&m.template != null) { |
| | | try { |
| | | mySet1.add(JSON.stringify({ |
| | | template: m.template, |
| | | templateId: m.templateId |
| | | })) |
| | | } catch (error) { |
| | | console.log(222,error); |
| | | } |
| | | } |
| | | let num1 = mySet1.size; |
| | | if (num1 > num0) { |
| | | return m |
| | | } |
| | | }); |
| | | if (this.tableLists && this.tableLists.length > 0) { |
| | | this.tableList = null; |
| | | this.tableList = [this.tableLists[0]] |
| | | this.currentTable = this.tableLists[0].templateId; |
| | | // å¤ç页é¢åè¡¨æ°æ® |
| | | this.handleTableData() |
| | | } |
| | | }, |
| | | // å
纤é
ç½®ç¸å
³æ¨¡æ¿tableå表 |
| | | getTableLists0(list){ |
| | | const mySet1 = new Set(); |
| | | this.tableLists = list.filter(m => { |
| | | let num0 = mySet1.size; |
| | | if (m.templateId != null&&m.template != null) { |
| | | try { |
| | | mySet1.add(JSON.stringify({ |
| | | template: m.template, |
| | | templateId: m.templateId |
| | | })) |
| | | } catch (error) { |
| | | console.log(333,error); |
| | | } |
| | | } |
| | | let num1 = mySet1.size; |
| | | if (num1 > num0) { |
| | | return m |
| | | } |
| | | }); |
| | | if (this.tableLists && this.tableLists.length > 0) { |
| | | this.tableList = null; |
| | | this.tableList = [this.tableLists[0]] |
| | | this.currentTable = this.tableLists[0].templateId; |
| | | this.currentSample.insProduct = this.HaveJson(list) |
| | | // å¤ç页é¢åè¡¨æ°æ® |
| | | this.handleTableData() |
| | | } |
| | | }, |
| | | // å¤ç页é¢åè¡¨æ°æ® |
| | | handleTableData() { |
| | | console.log("ttt-------->>>>",this.tableList); |
| | | this.excelMethodList = []//excel彿°å表 |
| | | this.widthList = this.tableList[0].style.columnlen;//页é¢å®½åº¦--æ ¹æ®æ¨¡æ¿æ¥ç |
| | | // æ¸©åº¦å¾ªç¯æ£éªåå§è®°å½--å¼å§ |
| | | if(this.tableLists.find(m=>m.templateId==this.currentTable)&&this.tableLists.find(m=>m.templateId==this.currentTable).templateName=='æ¸©åº¦å¾ªç¯æ£éªåå§è®°å½'){ |
| | | // å¯¹è¦æ±å¼è¿è¡æåå¤ç,è¿èå¾åºé¡µé¢å
容 |
| | | let ask = this.currentSample.insProduct[0].ask |
| | | let askList = ask.split(';') |
| | | // è·åå¾ªç¯æ¬¡æ° |
| | | this.numOptions = [] |
| | | for (let i = 1; i <= askList[askList.length-1]; i++) { |
| | | this.numOptions.push({ |
| | | value:i, |
| | | label:i |
| | | }) |
| | | } |
| | | let mySet1 = new Set(); |
| | | askList.forEach((m,i) => { |
| | | if(i<askList.length-1){ |
| | | mySet1.add(m.split(',')[0].replace('â','')) |
| | | } |
| | | }) |
| | | // è·å温度ç¹å表 |
| | | this.temperatureOptions = [] |
| | | mySet1.forEach(m => { |
| | | this.temperatureOptions.push({ |
| | | value:String(m), |
| | | label:m |
| | | }) |
| | | }) |
| | | } |
| | | // æ¸©åº¦å¾ªç¯æ£éªåå§è®°å½---ç»æ |
| | | // çå¾ªç¯æ£éªåå§è®°å½---å¼å§ |
| | | if(this.tableLists.find(m=>m.templateId==this.currentTable)&&(this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('ç循ç¯')||this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('温åè¯éª'))){ |
| | | // æ ¹æ®è¦æ±å¼æåæ°æ®,å¾å°é¡µé¢æ¸²æçä¿¡æ¯ |
| | | let ask = this.currentSample.insProduct[0].ask |
| | | let askList = ask.split(';') |
| | | this.thermalCyclingInfo.max = Number(askList[askList.length-1]) |
| | | let arr = [] |
| | | for (let i = 0; i < askList.length-1; i++) { |
| | | arr.push(askList[i].split(',')[0]) |
| | | } |
| | | arr = arr.map(item=>{ |
| | | let obj = {} |
| | | obj.name = item; |
| | | if(obj.insResult==null||obj.insResult==undefined){ |
| | | obj.arr = [ |
| | | { |
| | | value0:'', |
| | | value1:'', |
| | | } |
| | | ] |
| | | obj.insResult = null; |
| | | } |
| | | return obj |
| | | }) |
| | | this.thermalCyclingInfo.arr = arr; |
| | | } |
| | | // çå¾ªç¯æ£éªåå§è®°å½---ç»æ |
| | | // æ¬æ¬¡å¾ªç¯ä¸»è¦å页颿¸²æå±é¢çå¤ç--åå
æ ¼åå¹¶é¢å¤ç |
| | | this.tableList.forEach(a => { |
| | | let mcList = [] |
| | | a.template.forEach(b => { |
| | | if (b.v.mc != undefined && b.v.mc.cs != undefined && b.v.mc.rs != undefined) { |
| | | mcList.push(b) |
| | | } |
| | | }) |
| | | let count = 0 |
| | | mcList.forEach(b => { |
| | | for (var c in a.template) { |
| | | for (var i = 0; i < b.v.mc.cs; i++) { |
| | | for (var i2 = 0; i2 < b.v.mc.rs; i2++) { |
| | | if (a.template[c].c === b.c + i && a.template[c].r === b.r + i2) { |
| | | let bb = this.HaveJson(b) |
| | | a.template[c].v.v = bb.v.v |
| | | a.template[c].v.ps = bb.v.ps |
| | | a.template[c].v.fc = bb.v.fc |
| | | a.template[c].v.fs = bb.v.fs |
| | | a.template[c].v.ht = bb.v.ht |
| | | a.template[c].mc = count |
| | | break |
| | | } |
| | | } |
| | | } |
| | | } |
| | | count++ |
| | | }) |
| | | }) |
| | | // æ¬æ¬¡å¾ªç¯ä¸»è¦æ¯æ§å¶åå¹¶,以忧嶿£éªé¡¹ä¿¡æ¯æ¯å¦å±ç¤ºåºæ¥,以便åç»æ£éª |
| | | this.tableList.forEach(a => { |
| | | let dels = new Set()//éè¦å é¤çè¡ |
| | | let ids = []//æææ£éªé¡¹çid |
| | | let set3 = new Set() |
| | | a.template.forEach(b => { |
| | | let size1 = set3.size |
| | | let size2 = set3.add(b.r).size |
| | | if (size1 < size2) { |
| | | let str = '' |
| | | let str2 = '' |
| | | let unit2 = '' |
| | | let count4 = 0 |
| | | let isThree = 0 |
| | | a.template.forEach(c => { |
| | | // è·åå° æ£éªé¡¹åç±»+æ£éªé¡¹+æ£éªåé¡¹çæ¼æ¥,å¦ææ¨¡æ¿éçä¿¡æ¯è·æ¥å£è¿åçæ£éªé¡¹ä¿¡æ¯è½å¤å¹é
åå±ç¤ºåºæ¥ |
| | | if (b.r === c.r) { |
| | | if(c.v.ps != undefined && c.v.ps.value === 'æ£éªé¡¹åç±»'&&count4 === 0){ |
| | | // ä¸çº§åç±» |
| | | isThree = 1 |
| | | }else if(c.v.ps != undefined && c.v.ps.value === 'æ£éªé¡¹'&&count4 === 0){ |
| | | // äºçº§åç±» |
| | | isThree = 0 |
| | | } |
| | | if(isThree==0){ |
| | | if (c.v.ps != undefined && c.v.ps.value === 'æ£éªé¡¹') { |
| | | if (count4 === 0) { |
| | | str += c.v.v |
| | | count4 += 1 |
| | | } |
| | | } else if (c.v.ps != undefined && c.v.ps.value === 'æ£éªå项') { |
| | | if (count4 === 1) { |
| | | str += c.v.v |
| | | count4 += 1 |
| | | } |
| | | } |
| | | }else if(isThree==1){ |
| | | if (c.v.ps != undefined && c.v.ps.value === 'æ£éªé¡¹åç±»') { |
| | | if (count4 === 0) { |
| | | str += c.v.v |
| | | count4 += 1 |
| | | } |
| | | }else if (c.v.ps != undefined && c.v.ps.value === 'æ£éªé¡¹') { |
| | | if (count4 === 1) { |
| | | str += c.v.v |
| | | count4 += 1 |
| | | } |
| | | } else if (c.v.ps != undefined && c.v.ps.value === 'æ£éªå项') { |
| | | if (count4 === 2) { |
| | | str += c.v.v |
| | | count4 += 1 |
| | | } |
| | | } |
| | | } |
| | | if (str === 'æºæ¢°æ§è½å¹²ææä¼¸å¼ºåº¦(纵å)') { |
| | | if (c.v.ps != undefined && c.v.ps.value === 'åä½') { |
| | | str2 = str + c.v.v |
| | | unit2 = c.v.v |
| | | |
| | | } |
| | | } |
| | | } |
| | | }) |
| | | if (str != '') { |
| | | let count2 = 0 |
| | | for (let i in this.currentSample.insProduct) { |
| | | let inspectionItemClass = this.currentSample.insProduct[i].inspectionItemClass==null||this.currentSample.insProduct[i].inspectionItemClass==undefined?'':this.currentSample.insProduct[i].inspectionItemClass |
| | | let inspectionItem = this.currentSample.insProduct[i].inspectionItem==null||this.currentSample.insProduct[i].inspectionItem==undefined?'':this.currentSample.insProduct[i].inspectionItem |
| | | let inspectionItemSubclass = this.currentSample.insProduct[i].inspectionItemSubclass==null||this.currentSample.insProduct[i].inspectionItemSubclass==undefined?'':this.currentSample.insProduct[i].inspectionItemSubclass |
| | | if(inspectionItemSubclass === 'å¹²ææä¼¸å¼ºåº¦(纵å)') { |
| | | // æ£éªå项为'å¹²ææä¼¸å¼ºåº¦(纵å)'æ¶ï¼æ¨¡çéæ¯ä¸¤ä¸ªè®¡ç®å¼å¯¹åºç¸åçæ£éªå¼å¹¶ä¸è®¡ç®æ¹å¼ä¸åï¼è¦æ ¹æ®ç¸åç'åä½'åç¹æ®ç渲æ |
| | | const unit = this.currentSample.insProduct[i].unit |
| | | if ((this.currentSample.insProduct[i].templateId === a.templateId && inspectionItemClass +inspectionItem+inspectionItemSubclass+unit === str2) || (this.currentSample.insProduct[i].templateId === a.templateId && !unit2.includes('/')&& inspectionItemClass +inspectionItem+inspectionItemSubclass === str)) { |
| | | ids.push({ |
| | | r: b.r, |
| | | id: this.currentSample.insProduct[i].id, |
| | | product: this.currentSample.insProduct[i] |
| | | }) |
| | | break |
| | | } |
| | | } else { |
| | | // 妿ç¸ç,é£ä¹è¯´ææ¾å°äº,并䏿idåèµ·æ¥,åç»æ£éªé¡¹ä¹ä¼å¨é¡µé¢ä¸æ¾ç¤ºåºæ¥ |
| | | if (this.currentSample.insProduct[i].templateId === a.templateId && inspectionItemClass +inspectionItem+inspectionItemSubclass === str) { |
| | | ids.push({ |
| | | r: b.r, |
| | | id: this.currentSample.insProduct[i].id, |
| | | product: this.currentSample.insProduct[i] |
| | | }) |
| | | break |
| | | } |
| | | } |
| | | count2++ |
| | | } |
| | | if (count2 == this.currentSample.insProduct.length) { |
| | | dels.add(b.r) |
| | | } |
| | | } |
| | | } |
| | | }) |
| | | // æä½å é¤ |
| | | dels.forEach(del => { |
| | | for (let b = 0; b < a.template.length; b++) { |
| | | if (a.template[b].r === del) { |
| | | a.template.splice(b, 1) |
| | | b -= 1 |
| | | } |
| | | } |
| | | }) |
| | | // æä½èµå¼--主è¦èµå¼åä½,è¯éªæ¹æ³çä¿¡æ¯ |
| | | ids.forEach(id => { |
| | | for (let b = 0; b < a.template.length; b++) { |
| | | if (a.template[b].r === id.r) { |
| | | a.template[b].i = id.id |
| | | if (a.template[b].v.ps != undefined && a.template[b].v.ps.value === 'åä½') { |
| | | a.template[b].v.v = id.product.unit |
| | | } |
| | | if (a.template[b].v.ps != undefined && (a.template[b].v.ps.value === 'è¯éªæ¹æ³' || a.template[b].v |
| | | .ps.value === 'æ£æµæ¹æ³')) { |
| | | a.template[b].v.v = id.product.methodS |
| | | } |
| | | } |
| | | } |
| | | }) |
| | | let set2 = new Set() |
| | | // åå¹¶çæ°æ®å¤ç,cs rs 代表åå¹¶çæ°é |
| | | a.template.forEach(b => { |
| | | let size1 = set2.size |
| | | let size2 = set2.add(b.mc).size |
| | | if (b.mc != undefined && size1 < size2) { |
| | | b.v.mc.rs = 0 |
| | | b.v.mc.cs = 0 |
| | | a.template.forEach(c => { |
| | | if (b.mc === c.mc) { |
| | | if (b.r === c.r) { |
| | | b.v.mc.cs += 1 |
| | | } |
| | | if (b.c === c.c) { |
| | | b.v.mc.rs += 1 |
| | | } |
| | | } |
| | | }) |
| | | } |
| | | }) |
| | | }) |
| | | // æ¬æ¬¡å¾ªç¯ä¸»è¦æ¯å¯¹åç«¯ä¼ åè¿è¡åå§å,æ ·å¼é»è¾ä¿®æ¹ |
| | | this.tableList.forEach(a => { |
| | | let arrs = [] |
| | | let set = new Set() |
| | | let count1 = 0 |
| | | let conclusionList = []; //ç»è®ºå表 |
| | | let finalList = []; //æç»å¼å表 |
| | | // ç»è®ºä¸æç»å¼å¨è¿éä¸ä¸å¯¹åº,以ä¸ä¸¤ä¸ªå表é¿åº¦è¯å®æ¯ä¸æ ·ç,妿æä¸ä¸æ ·,é£ä¹å¤åæ¯æ¨¡æ¿é
ç½®å¾é®é¢ |
| | | conclusionList = a.template.filter(n => n.v.ps != undefined && n.v.ps.value === 'ç»è®º')//ç»è®ºå表 |
| | | finalList = a.template.filter(n => n.v.ps != undefined && n.v.ps.value === 'æç»å¼')//æç»å¼å表 |
| | | a.template.forEach( b => { |
| | | if (b.v.ps != undefined && b.v.ps.value === 'åºå·' && (b.v.mc == undefined || Object.keys(b.v.mc).length === 4)) { |
| | | // 对åºå·è¿è¡èµå¼ |
| | | count1++ |
| | | b.v.v = count1 |
| | | } |
| | | if (b.v.ps != undefined && b.v.ps.value === 'è¦æ±å¼') { |
| | | // å¯¹è¦æ±å¼è¿è¡èµå¼ |
| | | b.v.v = this.getAsk(b.i) |
| | | } |
| | | // 对页é¢çåç»åç«¯ä¼ åçæ£éªå¼,计ç®å¼,设å¤ç¼ç ,设å¤åç§°,æç»å¼,ç»è®ºè¿è¡åå§å |
| | | if (b.v.ps != undefined && typeof b.v.ps.value ==='string'&&b.v.ps.value.includes('æ£éªå¼')) { |
| | | this.$set(b.v, 'v','' ) |
| | | // b.v.v = '' |
| | | b.u = '' |
| | | b.i && this.param[b.i]&&this.param[b.i].insValue.push(b) |
| | | } |
| | | if (b.v.ps != undefined && b.v.ps.value === '计ç®å¼') { |
| | | this.$set(b.v, 'v','' ) |
| | | // b.v.v = '' |
| | | b.i && this.param[b.i]&&this.param[b.i].comValue.push(b) |
| | | } |
| | | if (b.v.ps != undefined && b.v.ps.value === '设å¤ç¼ç ') { |
| | | // b.v.v = '' |
| | | this.$set(b.v, 'v', '' ) |
| | | b.i && this.param[b.i]&&this.param[b.i].equipValue.push(b) |
| | | } |
| | | if (b.v.ps != undefined && b.v.ps.value === '设å¤åç§°') { |
| | | this.$set(b.v, 'v', '' ) |
| | | // b.v.v = '' |
| | | b.i && this.param[b.i]&&this.param[b.i].equipName.push(b) |
| | | } |
| | | if (b.v.ps != undefined && b.v.ps.value === 'æç»å¼') { |
| | | // b.v.v = '' |
| | | this.$set(b.v, 'v', '' ) |
| | | if (b.i !== undefined&&this.param[b.i]&&!this.param[b.i].resValue) { |
| | | this.param[b.i].resValue = b |
| | | } |
| | | } |
| | | if (b.v.ps != undefined && b.v.ps.value === 'ç»è®º') { |
| | | if (b.i !== undefined&&this.param[b.i]&&!this.param[b.i].insResult) { |
| | | this.param[b.i].insResult = b |
| | | conclusionList.forEach((n, i) => { |
| | | if (n.r == b.r && n.c == b.c) { |
| | | b.v.f = |
| | | `(${this.comparisonList.find(j=>j.value==(finalList[i].c)).label}${finalList[i].r+1})` |
| | | |
| | | } |
| | | }) |
| | | } |
| | | } |
| | | set.add(b.r) |
| | | // å¦ææ¨¡æ¿å表ç彿°åå¨,é£ä¹å å
¥å°excel彿°å表éé¢ |
| | | if (b.v.f) { |
| | | this.excelMethodList.push(b) |
| | | } |
| | | }) |
| | | // 以䏿¯æ ·å¼å¤çé»è¾ |
| | | set = Array.sort(set) |
| | | set.forEach(b => { |
| | | let arr = [] |
| | | a.template.forEach(c => { |
| | | if (c.r === b) { |
| | | arr.push(c) |
| | | } |
| | | }) |
| | | arrs.push(arr) |
| | | }) |
| | | a.arr = arrs |
| | | this.tableWidth = 0 |
| | | for (let i = 0; i < arrs[0].length; i++) { |
| | | this.tableWidth += (a.style.columnlen[i] === undefined ? 100 : a.style.columnlen[i]) |
| | | } |
| | | }) |
| | | // æ¬æ¬¡å¾ªç¯ä¸»è¦æ¯å¯¹é¡µé¢ååç«¯ä¼ åè¿è¡åå§åèµå¼ |
| | | this.currentSample.insProduct.forEach(async a => { |
| | | try { |
| | | // 计ç®å¼èµå¼ |
| | | let comValue = JSON.parse(a.insProductResult.comValue) |
| | | for (var i = 0; i < comValue.length; i++) { |
| | | this.param[a.id].comValue[i].v.v = this.toFixed(comValue[i].v,this.param[a.id].comValue[i].v.ct) |
| | | } |
| | | } catch (e) {} |
| | | try { |
| | | // æ£éªå¼èµå¼ |
| | | let insValue = JSON.parse(a.insProductResult.insValue) |
| | | for (let i = 0; i < insValue.length; i++) { |
| | | if(this.param[a.id].insValue.find(m=>m.c==insValue[i].c&&m.r==insValue[i].r)){ |
| | | this.param[a.id].insValue.find(m=>m.c==insValue[i].c&&m.r==insValue[i].r).v.v = this.toFixed(insValue[i].v,this.param[a.id].insValue.find(m=>m.c==insValue[i].c&&m.r==insValue[i].r).v.ct) |
| | | this.param[a.id].insValue.find(m=>m.c==insValue[i].c&&m.r==insValue[i].r).u = insValue[i].u |
| | | // this.param[a.id].insValue[i].v.v = insValue[i].v |
| | | // this.param[a.id].insValue[i].u = insValue[i].u |
| | | } |
| | | } |
| | | } catch (e) {} |
| | | try { |
| | | // 设å¤ç¼å·èµå¼ |
| | | let equipValue = JSON.parse(a.insProductResult.equipValue) |
| | | if(this.tableLists.find(m=>m.templateId==this.currentTable)&&(this.tableLists.find(m=>m.templateId==this.currentTable).templateName=='æ¸©åº¦å¾ªç¯æ£éªåå§è®°å½'||this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('ç循ç¯')||this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('温åè¯éª'))){ |
| | | // ç¹æ®é¡¹ç®åå§å |
| | | this.param[a.id].equipValue = [] |
| | | for (let i = 0; i < equipValue.length; i++) { |
| | | this.param[a.id].equipValue.push({ |
| | | v:{ |
| | | v:'' |
| | | } |
| | | }) |
| | | } |
| | | } |
| | | for (let i = 0; i < equipValue.length; i++) { |
| | | if(this.tableLists.find(m=>m.templateId==this.currentTable)&&(this.tableLists.find(m=>m.templateId==this.currentTable).templateName=='æ¸©åº¦å¾ªç¯æ£éªåå§è®°å½'||this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('ç循ç¯')||this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('温åè¯éª'))){ |
| | | // 温度循ç¯è®¾å¤èµå¼ |
| | | this.$set(this.equipForm,`code`+i,equipValue[i].v) |
| | | this.param[a.id].equipValue[i].v.v = equipValue[i].v |
| | | }else{ |
| | | // æ®é设å¤èµå¼ |
| | | this.param[a.id].equipValue[i].v.v = equipValue[i].v |
| | | } |
| | | } |
| | | } catch (e) {} |
| | | try { |
| | | // 设å¤åç§°èµå¼ |
| | | let equipName = JSON.parse(a.insProductResult.equipName) |
| | | for (let i = 0; i < equipName.length; i++) { |
| | | equipName[i].v !== '' && equipName[i].v.map(val => { |
| | | const index = this.equipOptions.findIndex(item => item.value === val) |
| | | if (index > -1) { |
| | | // æ ¹æ®è®¾å¤ç¼ç 转æ¢ä¸ºç¸åºç设å¤åç§° |
| | | val = this.equipOptions[index].deviceName |
| | | } |
| | | }) |
| | | } |
| | | if(this.tableLists.find(m=>m.templateId==this.currentTable)&&(this.tableLists.find(m=>m.templateId==this.currentTable).templateName=='æ¸©åº¦å¾ªç¯æ£éªåå§è®°å½'||this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('ç循ç¯')||this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('温åè¯éª'))){ |
| | | // 设å¤åç§°åå§å |
| | | this.param[a.id].equipName = [] |
| | | for (let i = 0; i < equipName.length; i++) { |
| | | this.param[a.id].equipName.push({ |
| | | v:{ |
| | | v:'' |
| | | } |
| | | }) |
| | | } |
| | | } |
| | | for (let i = 0; i < equipName.length; i++) { |
| | | if(this.tableLists.find(m=>m.templateId==this.currentTable)&&(this.tableLists.find(m=>m.templateId==this.currentTable).templateName=='æ¸©åº¦å¾ªç¯æ£éªåå§è®°å½'||this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('ç循ç¯')||this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('温åè¯éª'))){ |
| | | // 温度循ç¯èµå¼ |
| | | this.$set(this.equipForm,`value`+i,equipName[i].v) |
| | | this.param[a.id].equipName[i].v.v = equipName[i].v |
| | | }else{ |
| | | // æ®é设å¤åç§°èµå¼ |
| | | this.param[a.id].equipName[i].v.v = equipName[i].v |
| | | } |
| | | } |
| | | } catch (e) { |
| | | console.log('设å¤åç§°èµå¼----', e) |
| | | } |
| | | try { |
| | | // æç»å¼èµå¼ |
| | | this.param[a.id].resValue.v.v = this.toFixed(a.lastValue,this.param[a.id].resValue.v.ct) |
| | | // ç»è®ºèµå¼ |
| | | this.param[a.id].insResult.v.v = a.insResult |
| | | } catch (e) {} |
| | | }) |
| | | // 对excel彿°è¿è¡å¤ç |
| | | this.handleExcelMethod() |
| | | }, |
| | | // æ£éªå¼è¾å
¥å触åç彿° |
| | | changeInput(m, code, n,getDataType) { |
| | | // 为æ°éå®ä¹ä¸ä¸ªé»è¾åæ° |
| | | if(getDataType=='getDataType'){ |
| | | this.getDataType = 2; |
| | | } |
| | | let currentInsItemId = null//å½åæ£éªé¡¹id |
| | | if (n) { |
| | | currentInsItemId = JSON.parse(JSON.stringify(n.i)) |
| | | // å®ä¹ä¸ä¸ªå½æ°æ¥éªè¯åæ°æ¯å¦ææ |
| | | if (typeof n.v.v == 'string') { |
| | | function isValidFraction(fraction) { |
| | | const [numerator, denominator] = fraction.split('/'); // ååå忝 |
| | | return !(!denominator || !numerator); |
| | | } |
| | | const isTrue = isValidFraction(n.v.v) |
| | | if (!isTrue) { |
| | | n.v.v = n.v.v.replace('/', '') |
| | | } |
| | | } |
| | | } |
| | | try { |
| | | // å Worker åéæ¶æ¯ï¼å¼å§å¤çé»è¾ |
| | | this.worker.postMessage(JSON.stringify({ |
| | | code: code, |
| | | tableList:this.tableList, |
| | | excelMethodList:this.excelMethodList, |
| | | comparisonList:this.comparisonList, |
| | | currentSample:this.currentSample, |
| | | PROJECT:this.PROJECT, |
| | | param:this.param, |
| | | currentTable:this.currentTable, |
| | | getDataTypeId:this.getDataTypeId, |
| | | modelType: this.sampleProduct[0].model, |
| | | currentInsItem: n |
| | | })); |
| | | } catch (error) { |
| | | console.log(444,error); |
| | | } |
| | | |
| | | // çå¬ Worker è¿åçç»æ |
| | | this.worker.onmessage = (event) => { |
| | | this.result = JSON.parse(event.data); |
| | | switch (this.result.method){ |
| | | case 'saveInsContext': |
| | | console.log(`output->`,11111111111111) |
| | | this.$nextTick(()=>{ |
| | | // this.$delete(this.tableList[0],'arr') |
| | | this.$set(this.tableList[0],'arr',this.result.value.tableList[0].arr) |
| | | this.param = this.result.value.param |
| | | if(this.result.value.currentInsItem){ |
| | | currentInsItemId = this.result.value.currentInsItem.i |
| | | } |
| | | // ç¹æ®å¤çä¸ä¸ç»è®º,伿è¿ç§ç¹æ®æ
åµ |
| | | for (var i in this.param){ |
| | | if(this.param[i].insResult&&this.param[i].insResult.v&&this.param[i].insResult.v.v){ |
| | | if(this.param[i].insResult.v.v=='åæ ¼'){ |
| | | this.$set(this.param[i].insResult.v,'v',1) |
| | | }else if(this.param[i].insResult.v.v=='ä¸åæ ¼'){ |
| | | this.$set(this.param[i].insResult.v,'v',0) |
| | | } |
| | | } |
| | | } |
| | | }) |
| | | break; |
| | | case 'tableList': |
| | | this.$nextTick(()=>{ |
| | | // æ´æ°æ°æ® |
| | | this.$delete(this.tableList[0],'arr') |
| | | this.$set(this.tableList[0],'arr',this.result.value[0].arr) |
| | | // this.param = this.result.value.param |
| | | if(this.result.value.currentInsItem){ |
| | | currentInsItemId = this.result.value.currentInsItem.i |
| | | } |
| | | }) |
| | | break; |
| | | case 'getCurrentInsProduct': |
| | | // æ´æ°é¡µé¢æ°æ® |
| | | this.getCurrentInsProduct(this.result.value) |
| | | break; |
| | | } |
| | | }; |
| | | // ä¿åæ°æ® |
| | | setTimeout(()=>{ |
| | | this.saveInsContext(currentInsItemId) |
| | | },200) |
| | | }, |
| | | // æ¯å¦éè¦æ°é |
| | | async determineWhetherToCollectData(){ |
| | | let res = determineWhetherToCollectData({managementNumber: ''}) |
| | | this.isGet = res.data |
| | | }, |
| | | // æ ¹æ®åç«¯ä¼ åæ´æ°é¡µé¢æ°æ® param => this.tableList[0].insProductResult |
| | | getCurrentInsProduct(pId) { |
| | | if (!this.tableList[0].insProductResult) { |
| | | this.tableList[0].insProductResult = {} |
| | | } |
| | | for (let m in this.param[pId]) { |
| | | let value = this.param[pId][m] |
| | | switch (m) { |
| | | case 'comValue': |
| | | // èµå¼è®¡ç®å¼ |
| | | if (value && value.length > 0) { |
| | | this.tableList[0].insProductResult[m] = []; |
| | | value.forEach((a, i) => { |
| | | let obj = { |
| | | v: a.v.v, |
| | | } |
| | | this.tableList[0].insProductResult[m].push(obj); |
| | | }) |
| | | try { |
| | | this.tableList[0].insProductResult[m] = JSON.stringify(this.tableList[0].insProductResult[m]) |
| | | } catch (error) { |
| | | console.log(555,error); |
| | | } |
| | | } |
| | | break; |
| | | // èµå¼æ£éªå¼ |
| | | case 'insValue': |
| | | if (value && value.length > 0) { |
| | | this.tableList[0].insProductResult[m] = []; |
| | | value.forEach((a, i) => { |
| | | let obj = { |
| | | v: a.v.v, |
| | | u: a.u, |
| | | } |
| | | this.tableList[0].insProductResult[m].push(obj); |
| | | }) |
| | | try { |
| | | this.tableList[0].insProductResult[m] = JSON.stringify(this.tableList[0].insProductResult[m]) |
| | | } catch (error) { |
| | | console.log(666,error); |
| | | } |
| | | } |
| | | break; |
| | | // èµå¼è®¾å¤ç¼å· |
| | | case 'equipValue': |
| | | if (value && value.length > 0) { |
| | | this.tableList[0].insProductResult[m] = []; |
| | | value.forEach((a, i) => { |
| | | let obj = { |
| | | v: a.v.v, |
| | | } |
| | | this.tableList[0].insProductResult[m].push(obj); |
| | | }) |
| | | try { |
| | | this.tableList[0].insProductResult[m] = JSON.stringify(this.tableList[0].insProductResult[m]) |
| | | } catch (error) { |
| | | console.log(777,error); |
| | | } |
| | | } |
| | | break; |
| | | // èµå¼è®¾å¤åç§° |
| | | case 'equipName': |
| | | if (value && value.length > 0) { |
| | | this.tableList[0].insProductResult[m] = []; |
| | | value.forEach((a, i) => { |
| | | let obj = { |
| | | v: a.v.v, |
| | | } |
| | | this.tableList[0].insProductResult[m].push(obj); |
| | | }) |
| | | try { |
| | | this.tableList[0].insProductResult[m] = JSON.stringify(this.tableList[0].insProductResult[m]) |
| | | } catch (error) { |
| | | console.log(888,error); |
| | | } |
| | | } |
| | | break; |
| | | // èµå¼æç»å¼ |
| | | case 'resValue': |
| | | this.tableList[0].lastValue = value?value.v.v:'' |
| | | break; |
| | | // èµå¼ç»è®º |
| | | case 'insResult': |
| | | this.tableList[0].insResult = value?value.v.v:'' |
| | | break; |
| | | } |
| | | } |
| | | }, |
| | | // 对EXCEL彿°è¿è¡å¤ç |
| | | handleExcelMethod() { |
| | | if (this.excelMethodList.length > 0) { |
| | | this.excelMethodList.map(item => { |
| | | // å¾å°æ¯ä¸ªå½æ°çåæ°å表 |
| | | item.valueList = excelFunction.changeParameter(item.v.f); |
| | | return item; |
| | | }) |
| | | } |
| | | }, |
| | | getValue(v){ |
| | | // 对页é¢å±ç¤ºæ°æ®è¿è¡å¤ç,@,代表æ¢è¡ |
| | | let str = v.v?v.v:(v.v===0?v.v:(v.ct&&v.ct.s?v.ct.s.length>0&&v.ct.s[0].v.replace(new RegExp('\n', 'g'), '<br/>').replace(new RegExp('@', 'g'), '<br/>'):'')) |
| | | // å¯¹æ°æ®ä¿çå°æ°ç¹è¿è¡å¤ç |
| | | if(v.ct&&v.ct.fa&&v.ct.fa.includes('.')&&str){ |
| | | let num = 0 |
| | | let str0 = v.ct.fa.split('.')[1] |
| | | num = str0.length |
| | | str = Number(str).toFixed(num) |
| | | } |
| | | if(v.v&&typeof v.v == 'string'&&v.v.includes('@')){ |
| | | str = v.v.replace(new RegExp('@', 'g'), '<br/>') |
| | | } |
| | | return str |
| | | }, |
| | | // è·åå½åè¾å
¥æ¡ç±»å |
| | | getInspectionValueType(id) { |
| | | for (var a in this.currentSample.insProduct) { |
| | | if (this.currentSample.insProduct[a].id == id) { |
| | | return this.currentSample.insProduct[a].inspectionValueType |
| | | } |
| | | } |
| | | }, |
| | | // è·åè¦æ±æè¿° |
| | | getTell(id) { |
| | | for (var a in this.currentSample.insProduct) { |
| | | if (this.currentSample.insProduct[a].id == id) { |
| | | return this.currentSample.insProduct[a].tell |
| | | } |
| | | } |
| | | }, |
| | | // 卿è·ååå
æ ¼å®½åº¦ |
| | | handleWidth(n) { |
| | | let sum = 0; |
| | | if (n.v.mc && n.v.mc.cs && n.v.mc.c != undefined) { |
| | | for (let i = 0; i < n.v.mc.cs; i++) { |
| | | let num = this.widthList[i + n.v.mc.c] ? this.widthList[i + n.v.mc.c] : 100 |
| | | sum += num; |
| | | } |
| | | } else { |
| | | sum = this.widthList[n.c] ? this.widthList[n.c] : 100 |
| | | } |
| | | return sum |
| | | }, |
| | | // 对è¾å
¥å¼è¿è¡æ ¼å¼æ ¡éª |
| | | handleInput (n) { |
| | | try { |
| | | n.v.v = n.v.v.replace(/[^\d.^e>\-/+]/g, ''); |
| | | n.v.v = n.v.v.replace(/\.{2,}/g,"."); //åªä¿ç第ä¸ä¸ª. æ¸
é¤å¤ä½ç |
| | | n.v.v = n.v.v.replace(".","$#$").replace(/\./g,"").replace("$#$","."); |
| | | n.v.v = n.v.v.replace(/\/{2,}/g,"/"); //åªä¿ç第ä¸ä¸ª/æ¸
é¤å¤ä½ç |
| | | n.v.v = n.v.v.replace("/","$#$").replace(/\//g,"").replace("$#$","/"); |
| | | } catch (error) { |
| | | console.log(error); |
| | | } |
| | | |
| | | }, |
| | | getInspectionItemType(id) { |
| | | for (var a in this.currentSample.insProduct) { |
| | | if (this.currentSample.insProduct[a].id == id) { |
| | | return this.currentSample.insProduct[a].inspectionItemType |
| | | } |
| | | } |
| | | }, |
| | | // è·åè¦æ±å¼ |
| | | getAsk(id) { |
| | | for (var a in this.currentSample.insProduct) { |
| | | if (this.currentSample.insProduct[a].id == id) { |
| | | return this.currentSample.insProduct[a].ask |
| | | } |
| | | } |
| | | }, |
| | | getSystemValue(n) { |
| | | let code = null |
| | | try { |
| | | this.param[n.i].equipValue.forEach(a=>{ |
| | | if(a.r === n.r){ |
| | | if (a.v.v == null || a.v.v == '') { |
| | | this.$message.error('请å
éæ©ééç设å¤') |
| | | return |
| | | }else{ |
| | | code = a.v.v |
| | | } |
| | | } |
| | | }) |
| | | } catch (e) { |
| | | // console.log(e); |
| | | this.$message.error('æ¾ä¸å°è®¾å¤å
容') |
| | | } |
| | | // console.log(n, code); |
| | | fetch('http://localhost:82/微信å¾ç_20240518100811.png').then(res=>res.blob()).then(blob=>{ |
| | | // console.log(blob); |
| | | const url = URL.createObjectURL(blob) |
| | | // console.log(url); |
| | | }) |
| | | /* this.$message.error('éé失败ã已弿¾æå¨æ¹å¼ã') |
| | | for (var a in this.currentSample.insProduct) { |
| | | if (this.currentSample.insProduct[a].id == n.i) { |
| | | this.currentSample.insProduct[a].inspectionItemType = 0 |
| | | } |
| | | } */ |
| | | }, |
| | | // è·åææè®¾å¤ |
| | | getEquipOptions(e, id) { |
| | | if (e) { |
| | | this.equipOptions = [] |
| | | search({ status: 0 }).then(res => { |
| | | if (res.code === 200 && res.data) { |
| | | this.equipOptions = res.data.map(m => { |
| | | m.value = m.managementNumber |
| | | m.label = m.deviceName |
| | | return m |
| | | }) |
| | | } |
| | | }).catch(error => { |
| | | console.error(error) |
| | | }) |
| | | } |
| | | }, |
| | | getUserInfo() { |
| | | getUserNow().then(res => { |
| | | this.userId = res.data.id |
| | | }) |
| | | }, |
| | | // 夿 ¸ |
| | | upInsReview(e) { |
| | | if (e == 1) { |
| | | // éè¿ |
| | | this.reviewLoading = true; |
| | | verifyPlan({ |
| | | orderId: this.orderId, |
| | | type: 1, |
| | | laboratory: this.sonLaboratory, |
| | | tell: null, |
| | | userId: this.checkUser |
| | | }).then(res => { |
| | | if (res.code === 200) { |
| | | this.$message.success("æä½æå") |
| | | this.$emit('goback') |
| | | this.addCheck = false |
| | | } |
| | | this.reviewLoading = false; |
| | | }).catch(error => { |
| | | console.error(error) |
| | | this.reviewLoading = false; |
| | | }) |
| | | } else { |
| | | // ä¸éè¿ |
| | | this.reviewDia = true; |
| | | } |
| | | }, |
| | | handleReviewDia() { |
| | | if (this.noReason) { |
| | | this.reviewLoading = true; |
| | | verifyPlan({ |
| | | orderId: this.orderId, |
| | | type: 0, |
| | | laboratory: this.sonLaboratory, |
| | | tell: this.noReason |
| | | }).then(res => { |
| | | if (res.code === 200) { |
| | | this.$message.success("æä½æå") |
| | | this.$emit('goback') |
| | | } |
| | | this.reviewLoading = false; |
| | | }).catch(error => { |
| | | console.error(error) |
| | | this.reviewLoading = false; |
| | | }) |
| | | } else { |
| | | this.$message.error('æªè¾å
¥ä¸éè¿åå ') |
| | | } |
| | | }, |
| | | submit() { |
| | | if (this.verifyUser === null || this.verifyUser === '') { |
| | | this.$message.error("请æå®å¤æ ¸äººå") |
| | | return |
| | | } |
| | | if(!this.otherForm.humidity){ |
| | | this.$message.error("请è¾å
¥æ¹¿åº¦") |
| | | return |
| | | } |
| | | if(!this.otherForm.temperature){ |
| | | this.$message.error("请è¾å
¥æ¸©åº¦") |
| | | return |
| | | } |
| | | this.submitLoading = true; |
| | | checkSubmitPlan({ |
| | | orderId: this.orderId, |
| | | laboratory: this.sonLaboratory, |
| | | }).then(res => { |
| | | if (res.code === 200) { |
| | | if(!res.data||res.data.length==0){ |
| | | this.submitLoading = true; |
| | | submitPlan({ |
| | | orderId: this.orderId, |
| | | laboratory: this.sonLaboratory, |
| | | verifyUser: this.verifyUser, |
| | | entrustCode: this.insOrder.entrustCode |
| | | }).then(res => { |
| | | if (res.code === 200) { |
| | | this.$message.success("æä½æå") |
| | | this.$emit('goback') |
| | | this.submitLoading = false; |
| | | this.addVerifyDia = false |
| | | } |
| | | }).catch(error => { |
| | | console.error(error) |
| | | this.submitLoading = false; |
| | | }) |
| | | }else{ |
| | | let newData = [] |
| | | const h = this.$createElement |
| | | for (let i in res.data) { |
| | | const lastChar = res.data[i].slice(-1); |
| | | if(lastChar=='-'){ |
| | | res.data[i] = res.data[i].slice(0, -1); |
| | | } |
| | | newData.push(h('p', {style: 'font-size: 14px;color: red;'}, (Number(i)+1)+'ã'+res.data[i])) |
| | | } |
| | | newData.push(h('p', { style: 'font-size: 16px;color:#000;margin-top:12px;overflow-y: auto;max-height:80vh' },'以ä¸é¡¹ç®ä¸åæ ¼ï¼ç¡®å®æäº¤ï¼')) |
| | | this.$confirm('æç¤º',{ |
| | | title:'æç¤º', |
| | | message: h('div', null, newData), |
| | | confirmButtonText: "ç¡®å®", |
| | | cancelButtonText: "åæ¶", |
| | | type: "" |
| | | }).then(() => { |
| | | this.submitLoading = true; |
| | | submitPlan({ |
| | | orderId: this.orderId, |
| | | laboratory: this.sonLaboratory, |
| | | verifyUser: this.verifyUser |
| | | }).then(res => { |
| | | if (res.code === 200) { |
| | | this.$message.success("æä½æå") |
| | | this.addVerifyDia = false |
| | | this.$emit('goback') |
| | | } |
| | | this.submitLoading = false; |
| | | }).catch(error => { |
| | | console.error(error) |
| | | this.submitLoading = false; |
| | | }) |
| | | }).catch(() => {}) |
| | | } |
| | | } |
| | | }).catch(error => { |
| | | console.error(error) |
| | | this.submitLoading = false; |
| | | }) |
| | | return |
| | | }, |
| | | // ç»ä¸å¨è¿éä¿åæ°æ® |
| | | saveInsContext(currentInsItemId) { |
| | | try { |
| | | if(this.param){ |
| | | let param = null |
| | | if(currentInsItemId){ |
| | | param = {[currentInsItemId] : this.param[currentInsItemId]} |
| | | }else{ |
| | | param = this.param |
| | | } |
| | | saveUnqualifiedContext({ |
| | | param: JSON.stringify(param), |
| | | currentTable:this.currentTable, |
| | | sampleId:this.currentSample.id |
| | | }).then(res => { |
| | | if (res.code == 201) { |
| | | this.$message.error('ä¿å失败') |
| | | return |
| | | } |
| | | this.$message.success('å·²ä¿å') |
| | | }) |
| | | // å Worker åéæ¶æ¯ï¼å¼å§å¤çé»è¾ |
| | | this.worker.postMessage(JSON.stringify({ |
| | | modelType: this.sampleProduct[0].model, |
| | | type: 'saveData', |
| | | tableList:this.tableList, |
| | | param:this.param, |
| | | currentTable:this.currentTable |
| | | })); |
| | | } |
| | | }catch (error) { |
| | | console.log(999,error); |
| | | } |
| | | }, |
| | | // è®¾å¤æ¹å |
| | | changeEquip(val, n, v) { |
| | | try { |
| | | // this.$set(n.v,'v',val) |
| | | this.tableList[0].arr.forEach((item,index)=>{ |
| | | item.forEach((m,i)=>{ |
| | | if(this.param[m.i]){ |
| | | this.param[m.i].state = 1 |
| | | } |
| | | // if(m.i==n.i&&m.v.ps&&m.v.ps.value=='设å¤åç§°'&&v){ |
| | | // this.$set(m.v,'v',v) |
| | | // } |
| | | }) |
| | | }) |
| | | for (let i in this.param) { |
| | | if(this.param[i].state!=1){ |
| | | delete this.param[i] |
| | | } |
| | | } |
| | | // if(val&&v){ |
| | | // for (let i1 in this.param[n.i].equipName) { |
| | | // if (this.param[n.i].equipName[i1].i === n.i && this.param[n.i].equipName[i1].r === n.r) { |
| | | // this.$delete(this.param[n.i].equipValue[i1].v,'v') |
| | | // this.$set(this.param[n.i].equipValue[i1].v,'v',val) |
| | | // this.$delete(this.param[n.i].equipName[i1].v,'v') |
| | | // this.$set(this.param[n.i].equipName[i1].v,'v',v) |
| | | // } |
| | | // } |
| | | // } |
| | | // this.equipOptions为设å¤åç§°ä¸ææ¡éé¡¹æ°æ® |
| | | for (let i1 in this.param[n.i].equipName) { |
| | | if (this.param[n.i].equipName[i1].i === n.i && this.param[n.i].equipName[i1].r === n.r) { |
| | | this.$delete(this.param[n.i].equipValue[i1].v,'v') |
| | | // å°æ°ç»èµå¼ç»è®¾å¤ç¼ç |
| | | this.$set(this.param[n.i].equipValue[i1].v,'v',val.join('ï¼')) |
| | | this.$delete(this.param[n.i].equipName[i1].v,'v') |
| | | // å°æ°ç»èµå¼ç»è®¾å¤ç¼ç |
| | | this.$set(this.param[n.i].equipName[i1].v,'v',val) |
| | | this.tableList[0].arr.forEach((item,index)=>{ |
| | | item.forEach((m)=>{ |
| | | if(m.i==n.i&&m.v.ps&&m.v.ps.value=='设å¤ç¼ç '){ |
| | | this.$set(m.v,'v',val.join('ï¼')) |
| | | } |
| | | if(m.i==n.i&&m.v.ps&&m.v.ps.value=='设å¤åç§°'){ |
| | | this.$set(m.v,'v',val) |
| | | } |
| | | }) |
| | | }) |
| | | } |
| | | } |
| | | // ä¿åæ°æ® |
| | | this.saveInsContext(n.i) |
| | | } catch (e) { |
| | | console.log('changeEquip----', e) |
| | | } |
| | | }, |
| | | getAuthorizedPerson() { |
| | | selectUserCondition({ type: 0 }).then((res) => { |
| | | let data = []; |
| | | res.data.forEach((a) => { |
| | | data.push({ |
| | | label: a.name, |
| | | value: a.id, |
| | | }); |
| | | }); |
| | | this.personList = data; |
| | | }); |
| | | }, |
| | | scrollInit() { |
| | | // è·åè¦ç»å®äºä»¶çå
ç´ |
| | | const nav = document.getElementById("tableBox") |
| | | let flag; // é¼ æ æä¸ |
| | | let downX; // é¼ æ ç¹å»çx䏿 |
| | | let scrollLeft; // å½åå
ç´ æ»å¨æ¡çåç§»é |
| | | nav.addEventListener("mousedown", function(event) { |
| | | flag = true; |
| | | downX = event.clientX; // è·åå°ç¹å»çx䏿 |
| | | scrollLeft = this.scrollLeft; // è·åå½åå
ç´ æ»å¨æ¡çåç§»é |
| | | }); |
| | | nav.addEventListener("mousemove", function(event) { |
| | | if (flag) { // 夿æ¯å¦æ¯é¼ æ æä¸æ»å¨å
ç´ åºå |
| | | let moveX = event.clientX; // è·åç§»å¨çxè½´ |
| | | let scrollX = moveX - downX; // å½åç§»å¨çxè½´ä¸æ åå»åç¹å»ä¸å»çxè½´ä¸æ å¾å°é¼ æ æ»å¨è·ç¦» |
| | | this.scrollLeft = scrollLeft - scrollX // é¼ æ æä¸çæ»å¨æ¡åç§»éåå»å½åé¼ æ çæ»å¨è·ç¦» |
| | | } |
| | | }); |
| | | // é¼ æ æ¬èµ·åæ¢æå¨ |
| | | nav.addEventListener("mouseup", function() { |
| | | flag = false; |
| | | }); |
| | | // é¼ æ 离å¼å
ç´ åæ¢æå¨ |
| | | nav.addEventListener("mouseleave", function(event) { |
| | | flag = false; |
| | | }); |
| | | }, |
| | | async caretTape(num){ |
| | | let index = this.currentKey1 + num |
| | | if(index < 1){ |
| | | this.$message.error('å½åæ¯ç¬¬ä¸ä¸ªå
纤带') |
| | | return |
| | | } else if(index > this.fiberOpticTape.length){ |
| | | this.$message.error('å½åæ¯æåä¸ä¸ªå
纤带') |
| | | return |
| | | } |
| | | this.currentKey1 = index |
| | | this.currentFiberOpticTape = this.HaveJson(this.fiberOpticTape[index - 1]) |
| | | this.param = {} |
| | | this.fiberOptic = [] |
| | | this.currentFiberOptic = null; |
| | | this.currentFiberOpticTape.productList.forEach(a => { |
| | | this.param[a.id] = { |
| | | insValue: [], |
| | | comValue: [], |
| | | resValue: null, |
| | | equipValue: [], |
| | | equipName: [], |
| | | insResult: null |
| | | } |
| | | }) |
| | | this.fiberOpticTapeVisible = false; |
| | | let list = await this.getCurrentProduct(this.currentFiberOpticTape.id,1) |
| | | this.getTableLists0(list) |
| | | if(this.currentFiberOpticTape.fiber&&this.currentFiberOpticTape.fiber.length>0){ |
| | | // é
ç½®å
纤 |
| | | this.fiberOptic = this.currentFiberOpticTape.fiber; |
| | | } |
| | | }, |
| | | async caretOptic(num){ |
| | | let index = this.currentKey2 + num |
| | | if(index < 1){ |
| | | this.$message.error('å½åæ¯ç¬¬ä¸ä¸ªå
纤') |
| | | return |
| | | } else if(index > this.fiberOptic.length){ |
| | | this.$message.error('å½åæ¯æåä¸ä¸ªå
纤') |
| | | return |
| | | } |
| | | this.currentKey2 = index |
| | | this.currentFiberOptic = this.HaveJson(this.fiberOptic[index - 1]) |
| | | this.currentFiberOptic.productList.forEach(a => { |
| | | this.param[a.id] = { |
| | | insValue: [], |
| | | comValue: [], |
| | | resValue: null, |
| | | equipValue: [], |
| | | equipName: [], |
| | | insResult: null |
| | | } |
| | | }) |
| | | let list = await this.getCurrentProduct(this.currentFiberOptic.id,2) |
| | | this.getTableLists0(list) |
| | | }, |
| | | beforeUpload(file) { |
| | | if (file.size > 1024 * 1024 * 10) { |
| | | this.$message.error('ä¸ä¼ æä»¶ä¸è¶
è¿10M'); |
| | | this.$refs.upload.clearFiles() |
| | | return false; |
| | | } else { |
| | | this.upLoading = true; |
| | | return true; |
| | | } |
| | | }, |
| | | onError(err, file, fileList) { |
| | | this.$message.error('ä¸ä¼ 失败') |
| | | this.$refs.upload.clearFiles() |
| | | }, |
| | | handleDown(row){ |
| | | downFile({ |
| | | id: row.id, |
| | | }).then(res => { |
| | | if (res.code === 200) { |
| | | let url = ''; |
| | | if(res.data.type==1){ |
| | | url = this.javaApi+'/img/'+res.data.fileUrl |
| | | file.downloadIamge(url,row.fileName) |
| | | }else{ |
| | | url = this.javaApi+'/word/'+res.data.fileUrl |
| | | const link = document.createElement('a'); |
| | | link.href = url; |
| | | link.download = row.fileName; |
| | | link.click(); |
| | | } |
| | | } |
| | | }).catch(error => { |
| | | |
| | | }) |
| | | }, |
| | | /** |
| | | * å°æ°å¼vä¿çct.faä¸'##'åçæå®å°æ°ä½æ°ï¼å¹¶è¿åæ ¼å¼ååçå符串ã |
| | | * |
| | | * @param v è¦æ ¼å¼åçæ°å¼ |
| | | * @param ct å
嫿 ¼å¼åé
ç½®ç对象 |
| | | * @param ct.fa æ ¼å¼åé
ç½®å符串ï¼è¥å
å«'##'åæç
§å
¶åçå
容确å®å°æ°ä½æ° |
| | | * @returns æ ¼å¼ååçå符串æåå§æ°å¼ï¼è¥é
ç½®ä¸ç¬¦åè¦æ±ï¼ |
| | | */ |
| | | toFixed(v,ct){ |
| | | if(v&&ct&&ct.fa){ |
| | | if(ct.fa.includes('.')){ |
| | | let num = ct.fa.slice(4).length |
| | | return Number(v).toFixed(num) |
| | | }else{ |
| | | return v |
| | | } |
| | | }else{ |
| | | return v |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | <style scoped> |
| | | .custom-table .el-table__header-wrapper th { |
| | | background-color: #87CEEB; /* åªå¯¹å¸¦æmy-custom-tableç±»çè¡¨æ ¼çæ */ |
| | | color: #fff; |
| | | } |
| | | .container { |
| | | overflow: auto; /* ç¡®ä¿å®¹å¨è½å
裹浮å¨å
ç´ */ |
| | | margin-bottom: 10px; |
| | | } |
| | | |
| | | .right-button { |
| | | float: right; |
| | | } |
| | | .inspection { |
| | | height: 100%; |
| | | overflow-y: auto; |
| | | } |
| | | |
| | | .inspection::-webkit-scrollbar { |
| | | width: 0; |
| | | } |
| | | |
| | | .title { |
| | | height: 60px; |
| | | line-height: 60px; |
| | | } |
| | | |
| | | .search { |
| | | width: 100%; |
| | | margin-bottom: 10px; |
| | | background-color: #fff; |
| | | border-radius: 3px; |
| | | } |
| | | |
| | | .search .form-inline { |
| | | padding-top: 20px; |
| | | padding-left: 0px; |
| | | text-align: left; |
| | | } |
| | | |
| | | .center { |
| | | width: calc(100% - 40px); |
| | | /* max-height: 580px; */ |
| | | background-color: #fff; |
| | | border-radius: 3px; |
| | | padding: 20px; |
| | | overflow: auto; |
| | | } |
| | | |
| | | .center-box { |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | flex-direction: column; |
| | | flex-wrap: wrap; |
| | | width: 100%; |
| | | overflow-x: auto; |
| | | /* overflow-x: scroll; */ |
| | | cursor: grab; |
| | | } |
| | | |
| | | .center-box:active{ |
| | | cursor: grabbing; |
| | | } |
| | | |
| | | .tables { |
| | | table-layout: fixed; |
| | | margin: 5px 5px 16px; |
| | | } |
| | | |
| | | .tables td { |
| | | height: 40px; |
| | | width: 100px; |
| | | text-align: center; |
| | | font-size: 14px; |
| | | word-wrap: break-word; |
| | | white-space: normal; |
| | | } |
| | | .thermal-table{ |
| | | min-width: calc(100% - 10px); |
| | | margin: 5px 5px 0; |
| | | table-layout: fixed; |
| | | } |
| | | .thermal-table td { |
| | | min-width: 70px; |
| | | text-align: center; |
| | | font-size: 14px; |
| | | word-wrap: break-word; |
| | | white-space: normal; |
| | | padding: 5px; |
| | | } |
| | | .table-container { |
| | | overflow-x: auto; /* ä½¿å®¹å¨æ¯ææ¨ªåæ»å¨ */ |
| | | max-width: 100%; /* éå¶å®¹å¨çæå¤§å®½åº¦ */ |
| | | margin-bottom: 16px; |
| | | } |
| | | |
| | | .content { |
| | | display: flex; |
| | | height: 100%; |
| | | align-items: center; |
| | | justify-content: left; |
| | | padding: 5px; |
| | | box-sizing: border-box; |
| | | overflow: hidden; |
| | | user-select: none; |
| | | } |
| | | |
| | | .content *{ |
| | | user-select: none; |
| | | } |
| | | |
| | | .content-h-0 { |
| | | justify-content: center; |
| | | } |
| | | |
| | | .content-h-1 { |
| | | justify-content: start; |
| | | } |
| | | |
| | | .content-h-2 { |
| | | justify-content: end; |
| | | } |
| | | |
| | | .content-v-0 { |
| | | align-items: center; |
| | | } |
| | | |
| | | .content-v-1 { |
| | | align-items: start; |
| | | } |
| | | |
| | | .content-v-2 { |
| | | align-items: end; |
| | | } |
| | | |
| | | .table_input { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | .table_input >>>.el-input__inner{ |
| | | border-color: rgba(0, 0, 0, 0.5) !important; |
| | | } |
| | | |
| | | .collection { |
| | | width: 50px; |
| | | height: 100%; |
| | | margin-left: 5px; |
| | | border-color: transparent; |
| | | background-color: #409eff; |
| | | color: #fff; |
| | | border-radius: 4px; |
| | | font-size: 12px; |
| | | } |
| | | |
| | | .collection:active { |
| | | opacity: .7; |
| | | } |
| | | .table_caret{ |
| | | font-size: 16px; |
| | | margin: 0 5px; |
| | | color: rgba(0, 0, 0, 0.5); |
| | | } |
| | | .table_caret:hover{ |
| | | color: #409eff; |
| | | cursor: pointer; |
| | | } |
| | | |
| | | .table_caret:active{ |
| | | opacity: .8; |
| | | } |
| | | >>>input::-webkit-inner-spin-button { |
| | | -webkit-appearance: none !important; /* éèå¾®è°æé® */ |
| | | margin: 0 !important; /* ç§»é¤å¾®è°æé®çè¾¹è· */ |
| | | } |
| | | |
| | | >>>input[type=number] { |
| | | -moz-appearance: textfield !important; /* é对 Firefox */ |
| | | } |
| | | >>>.el-form-item__content{ |
| | | display: inline-flex; |
| | | align-items: center; |
| | | } |
| | | </style> |
| | | <style> |
| | | .inspection .el-form-item__label { |
| | | color: #000; |
| | | } |
| | | |
| | | .inspection .el-drawer__header::before { |
| | | content: ""; |
| | | display: inline-block; |
| | | width: 4px; |
| | | height: 30.24px; |
| | | background: #3A7BFA; |
| | | border-radius: 10px; |
| | | margin-left: 32px; |
| | | margin-right: 8.5px; |
| | | } |
| | | |
| | | .inspection .el-drawer__header { |
| | | color: #303133; |
| | | text-align: left; |
| | | } |
| | | |
| | | .inspection .el-input-group__append { |
| | | padding: 0 14px; |
| | | color: #3A7BFA; |
| | | background-color: #fff; |
| | | height: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | |
| | | .inspection .center-box .el-input__inner { |
| | | font-size: 12px; |
| | | padding: 0 6px; |
| | | text-align: center; |
| | | } |
| | | |
| | | .inspection .el-textarea__inner { |
| | | padding: 2px; |
| | | } |
| | | |
| | | .inspection .el-textarea__inner::-webkit-scrollbar { |
| | | width: 0; |
| | | } |
| | | |
| | | .inspection .el-select { |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | |
| | | .inspection .el-textarea__inner { |
| | | min-height: 100% !important; |
| | | } |
| | | |
| | | .inspection .tables .el-input{ |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | .thermal-table .el-input{ |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | .custom-dialog .el-dialog__body { |
| | | max-width: 1000px; /* 设置æå¤§å®½åº¦ */ |
| | | } |
| | | .unPassCheck .el-dialog__body { |
| | | overflow: auto; |
| | | max-height: 800px; /* 设置æå¤§å®½åº¦ */ |
| | | } |
| | | </style> |