From 142ba3ed00220dcadf2a94e59664d5f1f027dbf4 Mon Sep 17 00:00:00 2001 From: licp <lichunping@guanfang.com.cn> Date: 星期三, 05 六月 2024 14:58:26 +0800 Subject: [PATCH] 新增附件上传 --- src/components/do/b1-inspect-order-plan/Inspection.vue | 486 +++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 441 insertions(+), 45 deletions(-) diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue index ca447d2..ba5a5bb 100644 --- a/src/components/do/b1-inspect-order-plan/Inspection.vue +++ b/src/components/do/b1-inspect-order-plan/Inspection.vue @@ -120,6 +120,19 @@ .collection:active { opacity: .7; } + .table_caret{ + font-size: 16px; + margin: 0 5px; + color: rgba(0, 0, 0, 0.1); + } + .table_caret:hover{ + color: #409eff; + cursor: pointer; + } + + .table_caret:active{ + opacity: .8; + } </style> <style> .inspection .el-form-item__label { @@ -169,12 +182,20 @@ .inspection .el-textarea__inner { min-height: 100% !important; } + + .inspection .tables .el-input{ + display: flex; + align-items: center; + } </style> <template> <div v-loading="loading" class="inspection"> <el-row class="title"> <el-col :span="12" style="padding-left: 20px;">妫�楠屽崟璇︽儏</el-col> <el-col :span="12" style="text-align: right;"> + <el-button size="small" type="primary" @click="fiberOpticVisible=true" v-if="fiberOptic.length>0">鍏夌氦鍒囨崲</el-button> + <el-button size="small" type="primary" @click="fiberOpticTapeVisible=true" v-if="fiberOpticTape.length>0">鍏夌氦甯﹀垏鎹�</el-button> + <el-button size="small" type="primary" @click="bushingVisible=true" v-if="bushing.length>0">濂楃鍒囨崲</el-button> <el-button size="small" type="primary" @click="sampleVisible=true">鏍峰搧鍒囨崲</el-button> <el-button size="small" type="primary" @click="taskVisible=true">浠诲姟鍒囨崲</el-button> <el-button size="small" type="primary" @click="addVerifyDia = true" v-show="state==1" @@ -221,7 +242,7 @@ size="small">{{ item.templateName }}</el-radio-button> </el-radio-group> </div> - <div class="center-box" id="nav"> + <div class="center-box" id="nav" v-loading="tableLoading"> <table border="1" class="tables" cellpadding="10" v-for="(item,index) in tableList" :key="index"> <tbody> <tr v-for="(m,i) in item.arr" :key="i"> @@ -241,9 +262,10 @@ <el-input v-else-if="getInspectionValueType(n.i) == 2" class="table_input" type="textarea" v-model="n.v.v" :disabled="getInspectionItemType(n.i) == 1 || (n.u != userId && n.u != undefined && n.u != '')" - @change="saveInsContext()" /> + @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`)" /> <el-select v-else-if="getInspectionValueType(n.i) == 5" class="table_input" v-model="n.v.v" - :disabled="state>1" @visible-change="e=>getDic(e,n.i)" @change="saveInsContext()"> + :disabled="state>1" @visible-change="e=>getDic(e,n.i)" + @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`)"> <el-option v-for="(e, i) in enumList" :key="i" :label="e.label" :value="e.value"></el-option> </el-select> <span :style="`font-family:${n.v.ff} !important;`" @@ -272,14 +294,24 @@ <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"> - <el-input class="table_input" type="textarea" + <!-- <el-input class="table_input" type="textarea" :disabled="getInspectionItemType(n.i) == 1 || (n.u != userId && n.u != undefined && n.u != '')" v-model="n.v.v" @change="saveInsContext()" v-if="getInspectionValueType(n.i) == 2"></el-input> <el-select v-else-if="getInspectionValueType(n.i) == 5" class="table_input" v-model="n.v.v" :disabled="state>1" @visible-change="e=>getDic(e,n.i)" @change="saveInsContext()"> <el-option v-for="(e, i) in enumList" :key="i" :label="e.label" :value="e.value"></el-option> - </el-select> - <span v-else :style="`font-family:${n.v.ff} !important;`">{{n.v.v}}</span> + </el-select> --> + <span :style="`font-family:${n.v.ff} !important;`">{{n.v.v}}</span> + </template> + <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='鏍峰搧缂栧彿'"> + <div style="display: flex;flex-wrap: nowrap;align-items: center;"> + <i class="el-icon-caret-left table_caret" @click="caretSample(-1)"></i> + <div :style="`font-family:${n.v.ff} !important;`">{{currentSample.sampleCode}}</div> + <i class="el-icon-caret-right table_caret" @click="caretSample(1)"></i> + </div> + </template> + <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='鏍峰搧鍨嬪彿'"> + <div :style="`font-family:${n.v.ff} !important;`" v-if="currentSample.model!==undefined&¤tSample.model!==null">{{currentSample.model}}</div> </template> <span v-else :style="`font-family:${n.v.ff} !important;`">{{n.v.v}}</span> </div> @@ -288,7 +320,57 @@ </tbody> </table> </div> + <el-upload :action="action" + :data="{ + orderId:id + }" + v-show="state==1" + :on-success="handleSuccessUp" :show-file-list="false" + accept='.jpg,.jpeg,.png,.gif,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.zip,.rar' :headers="headers" :on-change="beforeUpload" + :on-error="onError" ref='upload'> + <el-button size="small" type="primary" :loading="upLoading">闄勪欢涓婁紶</el-button></el-upload> + <ValueTable class="value-table" ref="fileList" :url="$api.insOrderPlan.getFileList" + :componentData="componentData0" + :delUrl="$api.insOrderPlan.delfile" + :key="upIndex" style="height: 100%;margin-top: 16px;"/> </div> + <el-drawer title="鍏夌氦鍒囨崲" :visible.sync="fiberOpticVisible" :size="500"> + <el-table class="el-table" ref="fiberOpticTable" :data="fiberOptic" height="100%" tooltip-effect="dark" border + highlight-current-row @row-click="handleChangeOptic" :row-class-name="tableRowClassName" + :current-row-key="currentKey" :row-key="record=>record.index" v-if="fiberOpticVisible"> + <el-table-column type="index" align="center" label="搴忓彿" width="70px" :key="Math.random()"> + </el-table-column> + <el-table-column prop="bushColor" label="绠″鑹叉爣" min-width="100px" show-overflow-tooltip></el-table-column> + <el-table-column prop="color" label="鍏夌氦鑹叉爣" min-width="100px" show-overflow-tooltip></el-table-column> + <el-table-column prop="model" label="鍏夌氦瑙勬牸" min-width="130px" show-overflow-tooltip + ></el-table-column> + <el-table-column prop="standard" label="鍙傝�冩爣鍑�" width="100px" show-overflow-tooltip></el-table-column> + </el-table> + </el-drawer> + <el-drawer title="鍏夌氦甯﹀垏鎹�" :visible.sync="fiberOpticTapeVisible" :size="500"> + <el-table class="el-table" ref="fiberOpticTapeTable" :data="fiberOpticTape" height="100%" tooltip-effect="dark" border + highlight-current-row @row-click="handleChangeTape" :row-class-name="tableRowClassName" + :current-row-key="currentKey" :row-key="record=>record.index" v-if="fiberOpticTapeVisible"> + <el-table-column type="index" align="center" label="搴忓彿" width="70px" :key="Math.random()"> + </el-table-column> + <el-table-column prop="code" label="鍏夌氦甯︾紪鍙�" min-width="110px" show-overflow-tooltip></el-table-column> + <el-table-column prop="model" label="鍏夌氦甯﹁鏍�" min-width="110px" show-overflow-tooltip></el-table-column> + <el-table-column prop="standard" label="鍙傝�冩爣鍑�" width="90px" show-overflow-tooltip></el-table-column> + <el-table-column prop="num" label="鍏夌氦妫�娴嬮噺" min-width="110px" show-overflow-tooltip + ></el-table-column> + </el-table> + </el-drawer> + <el-drawer title="濂楃鍒囨崲" :visible.sync="bushingVisible" :size="500"> + <el-table class="el-table" ref="bushingTable" :data="bushing" height="100%" tooltip-effect="dark" border + highlight-current-row @row-click="handleChangeBushing" :row-class-name="tableRowClassName" + :current-row-key="currentKey" :row-key="record=>record.index" v-if="bushingVisible"> + <el-table-column type="index" align="center" label="搴忓彿" width="70px" :key="Math.random()"> + </el-table-column> + <el-table-column prop="color" label="绠¤壊鏍�" min-width="100px" show-overflow-tooltip></el-table-column> + <el-table-column prop="standNum" label="鏍囬噺" min-width="100px" show-overflow-tooltip></el-table-column> + <el-table-column prop="testNum" label="娴嬭瘯閲�" min-width="100px" show-overflow-tooltip></el-table-column> + </el-table> + </el-drawer> <el-drawer title="鏍峰搧鍒囨崲" :visible.sync="sampleVisible" :size="500"> <el-table class="el-table" ref="productTable" :data="sampleProduct" height="100%" tooltip-effect="dark" border highlight-current-row @row-click="handleChangeSample" :row-class-name="tableRowClassName" @@ -318,8 +400,8 @@ </el-table> </el-drawer> <el-drawer title="浠诲姟鍒囨崲" :visible.sync="taskVisible" :size="500"> - <ValueTable class="value-table" ref="insOrderPlan" :url="$api.insOrderPlan.selectInsOrderPlanList" - :componentData="componentData" :key="upIndex" style="max-height: 100%;height: inherit;"/> + <ValueTable class="value-table" ref="insOrderPlan" :url="$api.insOrderPlan.inspectionOrderDetailsTaskSwitching" + :componentData="componentData" :key="upIndex" style="height: 100%;"/> </el-drawer> <el-dialog title="妫�楠屽鏍�" :visible.sync="reviewDia" width="500px"> <div class="body" style="display: flex;padding: 10px;" v-if="reviewDia"> @@ -352,10 +434,8 @@ </template> <script> - import { - set - } from 'shelljs'; import ValueTable from '../../tool/value-table.vue' + import file from '../../../util/file' export default { props: ['sonLaboratory', 'orderId', 'state'], components: { @@ -397,6 +477,53 @@ requiredAdd: [], requiredUp: [] }, + componentData0: { + entity: { + insOrderId:'' + }, + isIndex: true, + showSelect: false, + select: false, + selectMethod: '', + sort: false, + init:false, + do: [ + { + id: 'delete', + font: '鍒犻櫎', + type: 'text', + method: 'doDiy', + disabFun: (row, index) => { + return this.state!=1 + } + }, { + id: 'handleDown', + font: '涓嬭浇', + type: 'text', + method: 'handleDown' + }, + ], + isPage: false, + linkEvent: {}, + tagField: { + type:{ + select:[ + { + value: 1, + label: '鍥剧墖' + }, + { + value: 2, + label: '鏂囦欢' + } + ] + } + }, + currentId: '', + selectField: {}, + requiredAdd: [], + requiredUp: [] + }, upIndex: 0, insOrder: {}, sampleProduct: [], @@ -422,9 +549,30 @@ addVerifyDia: false, verifyUser: null, personList: [], - enumList: [] + enumList: [], + fiberOpticVisible:false, + fiberOpticTapeVisible:false, + bushingVisible:false, + fiberOpticTape:[],//鍏夌氦甯﹀垪琛� + fiberOptic:[],//鍏夌氦鍒楄〃 + bushing:[],//濂楃鍒楄〃 + currentFiberOpticTape:null,//褰撳墠鍏夌氦甯� + currentFiberOptic:null,//褰撳墠鍏夌氦 + currentBushing:null,//褰撳墠濂楃 + tableLoading:false, + upLoading:false } }, + computed: { + headers() { + return { + 'token': sessionStorage.getItem('token') + } + }, + action() { + return this.javaApi + this.$api.insOrderPlan.uploadFile + } + }, created() { this.componentData.entity.sonLaboratory = this.sonLaboratory; this.id = this.orderId; @@ -443,15 +591,19 @@ this.$axios.post(this.$api.insOrderPlan.doInsOrder, { id: val, laboratory: this.sonLaboratory - }).then(res => { + }).then(async res => { this.insOrder = res.data.insOrder; + this.componentData0.entity.insOrderId = val; + this.$refs.fileList.selectList() this.urgentList.forEach(m => { if (m.value == this.insOrder.type) { this.insOrder.typeName = m.label } }) this.sampleProduct = res.data.sampleProduct - this.currentSample = this.sampleProduct[0] + this.currentSample = this.HaveJson(this.sampleProduct[0]) + let list = await this.getCurrentProduct(this.currentSample.id,0) + this.currentSample.insProduct = this.HaveJson(list) this.currentSample.insProduct.forEach(a => { this.param[a.id] = { insValue: [], @@ -463,11 +615,23 @@ } }) if (this.currentSample.index == undefined) this.currentSample['index'] = 1 + let bushing = this.currentSample.bushing this.loading = false // this.handleTableData() this.getTableLists(); this.componentData.currentId = val; this.currentKey = 1; + + // 娓呯┖鍏夌氦閰嶇疆鐩稿叧鏁版嵁 + this.fiberOpticTape = [] + this.currentFiberOpticTape = null; + this.fiberOptic = [] + this.currentFiberOptic = null; + this.bushing = [] + this.currentBushing = null; + if(bushing&&bushing.length>0){ + this.bushing = bushing + } }) }, currentTable(val1, val0) { @@ -483,9 +647,81 @@ } }, methods: { - handleChangeSample(row, column, event) { - this.currentSample = row; + async getCurrentProduct(id,type){ + this.tableLoading = true; + let res = await this.$axios.post(this.$api.insOrderPlan.getInsProduct+'?id='+id+'&type='+type+'&laboratory='+this.sonLaboratory) + this.tableLoading = false; + return res.data + }, + handleChangeBushing(row, column, event){ + this.currentBushing = row; + this.fiberOpticTape = [] + this.currentFiberOpticTape = null; + this.fiberOptic = [] + this.currentFiberOptic = null; + if(row.fiber&&row.fiber.length>0){ + // 鐩存帴閰嶇疆鍏夌氦 + this.fiberOptic = row.fiber; + }else if(row.fibers&&row.fibers.length>0){ + // 閰嶇疆鍏夌氦甯﹀悗锛屽啀閰嶇疆鍏夌氦 + this.fiberOpticTape = row.fibers; + } + this.bushingVisible = false; + }, + async handleChangeOptic(row, column, event){ + this.currentFiberOptic = row; + this.currentFiberOptic.productList.forEach(a => { + this.param[a.id] = { + insValue: [], + comValue: [], + resValue: null, + equipValue: [], + equipName: [], + insResult: null + } + }) + this.fiberOpticVisible = false; + let list = await this.getCurrentProduct(row.id,2) + this.getTableLists0(list) + this.currentKey = row.index + }, + async handleChangeTape(row, column, event){ + this.currentFiberOpticTape = row; 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(row.id,1) + this.getTableLists0(list) + if(row.fiber&&row.fiber.length>0){ + // 閰嶇疆鍏夌氦 + this.fiberOptic = row.fiber; + } + this.currentKey = row.index + }, + async handleChangeSample(row, column, event) { + this.param = {} + // 娓呯┖鍏夌氦閰嶇疆鐩稿叧鏁版嵁 + this.fiberOpticTape = [] + this.currentFiberOpticTape = null; + this.fiberOptic = [] + this.currentFiberOptic = null; + this.bushing = [] + this.currentBushing = null; + this.sampleVisible = false; + this.currentSample = this.HaveJson(row) + let list = await this.getCurrentProduct(row.id,0) + this.currentSample.insProduct = this.HaveJson(list) this.currentSample.insProduct.forEach(a => { this.param[a.id] = { insValue: [], @@ -496,9 +732,12 @@ insResult: null } }) + let bushing = this.currentSample.bushing + if(bushing&&bushing.length>0){ + this.bushing = bushing + } // this.handleTableData() this.getTableLists(); - this.sampleVisible = false; this.currentKey = row.index }, handleChangeTask(row) { @@ -586,6 +825,30 @@ 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) { + mySet1.add(JSON.stringify({ + template: m.template, + templateId: m.templateId + })) + } + 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() } }, @@ -843,15 +1106,19 @@ if (b[0].r == a.r) { b.forEach(c => { if (c.c == a.c) { - if (!isNaN(parseFloat(c.v.v))) { - var tableCode = '' - for (var d in this.comparisonList) { - if (c.c == this.comparisonList[d].value) { - tableCode = this.comparisonList[d].label - break - } + var tableCode = '' + for (var d in this.comparisonList) { + if (c.c == this.comparisonList[d].value) { + tableCode = this.comparisonList[d].label + break } - comValue[(tableCode + (c.r + 1))] = parseFloat(c.v.v) + } + if(this.getInspectionValueType(item.i)==1){ + if (!isNaN(parseFloat(c.v.v))) { + comValue[(tableCode + (c.r + 1))] = parseFloat(c.v.v) + } + }else{ + comValue[(tableCode + (c.r + 1))] = c.v.v } } }) @@ -865,24 +1132,31 @@ let comp = ask.map((m, i) => { if (m.includes('=')) { return res == m.split('=')[1] - } - if (m.includes('鈮�')) { + } else if (m.includes('鈮�')) { return res >= m.split('鈮�')[1] - } - if (m.includes('鈮�')) { + }else if (m.includes('鈮�')) { return res <= m.split('鈮�')[1] - } - if (m.includes('<')) { + }else if (m.includes('<')) { return res < m.split('<')[1] - } - if (m.includes('>')) { + }else if (m.includes('>')) { return res > m.split('>')[1] + }else if (m.includes('~')) { + let k = m.split('~') + return res >= k[0] && res <= k[1] + }else if(m.includes('-')){ + let k = m.split('-') + return res >= k[0] && res <= k[1] + }else if(m.includes('卤')){ + let k = m.split('卤') + return res >= (k[0] - k[1]) && res <= (k[0] + k[1]) } }) - if (comp.every(m => m)) { - item.v.v = 1 - } else { - item.v.v = 0 + if(this.getInspectionValueType(item.i)==1){ + if (comp.every(m => m)) { + item.v.v = 1 + } else { + item.v.v = 0 + } } this.saveInsContext() } @@ -922,14 +1196,18 @@ valueList.forEach(b => { str = str.replace(b.name, b.value) }) - if (item.v.f.includes('/') > -1) { + if (item.v.f.includes('/')) { if (Object.getOwnPropertyNames(comValue).length == valueList.length) { comResult = eval(str) } else { comResult = '' } } else { - comResult = eval(str) + if(this.getInspectionValueType(item.i)==1){ + comResult = eval(str) + }else{ + comResult = str + } } break; } @@ -937,8 +1215,12 @@ if (a[0].r == item.r && comResult != '') { for (var b in a) { if (a[b].c == item.c) { - let val = parseFloat(comResult.toFixed(3)) - a[b].v.v = isNaN(val) ? '' : val + try{ + let val = parseFloat(comResult.toFixed(3)) + a[b].v.v = isNaN(val) ? '' : val + }catch(e){ + a[b].v.v = comResult + } break } } @@ -1206,20 +1488,67 @@ } this.addVerifyDia = false this.submitLoading = true; - this.$axios.post(this.$api.insOrderPlan.submitPlan, { + this.$axios.post(this.$api.insOrderPlan.checkSubmitPlan, { orderId: this.orderId, laboratory: this.sonLaboratory, - verifyUser: this.verifyUser }).then(res => { if (res.code === 200) { - this.$message.success("鎿嶄綔鎴愬姛") - this.$emit('goback') + console.log(res.data) + if(!res.data||res.data.length==0){ + this.$axios.post(this.$api.insOrderPlan.submitPlan, { + orderId: this.orderId, + laboratory: this.sonLaboratory, + verifyUser: this.verifyUser + }).then(res => { + if (res.code === 200) { + this.$message.success("鎿嶄綔鎴愬姛") + this.$emit('goback') + } + this.submitLoading = 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: 12px;'}, (Number(i)+1)+'銆�'+res.data[i])) + } + newData.push(h('p', { style: 'font-size: 16px;color:#000;margin-top:12px' },'浠ヤ笂椤圭洰涓嶅悎鏍硷紝纭畾鎻愪氦锛�')) + this.$confirm('鎻愮ず',{ + title:'鎻愮ず', + message: h('div', null, newData), + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "" + }).then(() => { + this.$axios.post(this.$api.insOrderPlan.submitPlan, { + orderId: this.orderId, + laboratory: this.sonLaboratory, + verifyUser: this.verifyUser + }).then(res => { + if (res.code === 200) { + this.$message.success("鎿嶄綔鎴愬姛") + this.$emit('goback') + } + }).catch(error => { + console.error(error) + }) + }).catch(() => {}) + } + } this.submitLoading = false; }).catch(error => { console.error(error) this.submitLoading = false; }) + return }, saveInsContext() { this.$axios.post(this.$api.insOrderPlan.saveInsContext, { @@ -1282,6 +1611,73 @@ nav.addEventListener("mouseleave", function(event) { flag = false; }); + }, + async caretSample(num){ + let index = this.currentKey + num + if(index < 1){ + this.$message.error('褰撳墠鏄涓�涓牱鍝�') + return + } else if(index > this.sampleProduct.length){ + this.$message.error('褰撳墠鏄渶鍚庝竴涓牱鍝�') + return + } + this.currentKey = index + this.currentSample = this.HaveJson(this.sampleProduct[index - 1]) + let list = await this.getCurrentProduct(this.currentSample.id,0) + this.currentSample.insProduct = this.HaveJson(list) + this.currentSample.insProduct.forEach(a => { + this.param[a.id] = { + insValue: [], + comValue: [], + resValue: null, + equipValue: [], + equipName: [], + insResult: null + } + }) + this.getTableLists() + }, + handleSuccessUp(response, ) { + this.upLoading = false; + if (response.code == 200) { + this.$message.success('涓婁紶鎴愬姛'); + this.$refs.fileList.selectList() + } + }, + 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){ + this.$axios.post(this.$api.insOrderPlan.downFile, { + id: row.id, + }).then(res => { + if (res.code === 200) { + let url = ''; + if(res.data.type==1){ + url = this.javaApi+'/img/'+res.data.url + file.downloadIamge(url,row.fileName) + }else{ + url = this.javaApi+'/word/'+res.data.url + const link = document.createElement('a'); + link.href = url; + link.download = row.fileName; + link.click(); + } + } + }).catch(error => { + + }) } } } -- Gitblit v1.9.3