| | |
| | | padding: 20px; |
| | | } |
| | | |
| | | .el-form-item { |
| | | margin-bottom: 16px; |
| | | .el-form-item { |
| | | margin-bottom: 16px; |
| | | } |
| | | |
| | | .full-screen{ |
| | | position: absolute; |
| | | right: 52px; |
| | | top: 22px; |
| | | } |
| | | </style> |
| | | |
| | |
| | | <el-input size="small" placeholder="请输入" clearable v-model="componentData.entity.entrustCode" |
| | | @keyup.enter.native="refreshTable()"></el-input> |
| | | </div> |
| | | </div> |
| | | <div class="search_thing" style="padding-left: 30px;"> |
| | | <el-button size="small" @click="refresh()">重 置</el-button> |
| | | <el-button size="small" type="primary" @click="refreshTable()">查 询</el-button> |
| | | </div> |
| | | </div> |
| | | <div class="search_thing" style="padding-left: 30px;"> |
| | | <el-button size="small" @click="refresh()">重 置</el-button> |
| | | <el-button size="small" type="primary" @click="refreshTable()">查 询</el-button> |
| | | </div> |
| | | </div> |
| | | <!-- <input id="input" type="file" accept=".doc,.docx"></input> --> |
| | | <div class="table"> |
| | | <ValueTable ref="ValueTable" :url="$api.insReport.pageInsReport" :componentData="componentData" |
| | | :key="upIndex"/> |
| | | </div> |
| | | </div> |
| | | <el-dialog title="在线编制" :visible.sync="claimVisible" width="25cm" :modal-append-to-body="false" :fullscreen="fullscreen"> |
| | | <div class="full-screen"> |
| | | <i class="el-icon-full-screen" style="cursor: pointer;font-size: 18px" @click="fullscreen=true;" v-if="!fullscreen"></i> |
| | | <img src="../../../static/img/no-full.svg" alt="" v-else style="cursor: pointer;" @click="fullscreen=false;" > |
| | | </div> |
| | | <div class="table"> |
| | | <ValueTable ref="ValueTable" :url="$api.insReport.pageInsReport" :componentData="componentData" |
| | | :key="upIndex" /> |
| | | </div> |
| | | </div> |
| | | <el-dialog title="在线编制" :visible.sync="claimVisible" width="80%" :modal-append-to-body="false"> |
| | | <Word style="height:70vh" v-if="claimVisible" ref="Word" /> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="claimVisible = false">取 消</el-button> |
| | | <el-button type="primary" @click="confirmClaim">确 定</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | </div> |
| | | <Word :style="{height:fullscreen?'82':'70'+'vh'}" v-if="claimVisible" ref="Word" :value="value"/> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="claimVisible = false">取 消</el-button> |
| | | <el-button type="primary" @click="confirmClaim">确 定</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import ValueTable from '../tool/value-table.vue' |
| | | import Word from '../tool/word.vue' |
| | | export default { |
| | | components: { |
| | | ValueTable, |
| | | import file from '../../util/file'; |
| | | import { convertToHtml } from 'mammoth'; |
| | | export default { |
| | | components: { |
| | | ValueTable, |
| | | Word, |
| | | }, |
| | | data() { |
| | |
| | | entityCopy: {}, |
| | | upIndex: 0, |
| | | statusList: [], |
| | | claimVisible: false |
| | | claimVisible: false, |
| | | fullscreen:false, |
| | | value:`` |
| | | } |
| | | }, |
| | | mounted() { |
| | | this.entityCopy = this.HaveJson(this.componentData.entity) |
| | | this.getPower() |
| | | |
| | | // let that = this; |
| | | // let input = document.getElementById('input'); |
| | | // input.onchange = function(){ |
| | | // let file = this.files[0]; |
| | | // let reader = new FileReader(); |
| | | // reader.readAsArrayBuffer(file); |
| | | // reader.onload = function(loadEvent){ |
| | | // convertToHtml({ |
| | | // arrayBuffer: loadEvent.target.result }) |
| | | // .then(res=>{ |
| | | // that.value = res.value |
| | | // .replace('<h1>', '<h1 style="text-align: center;">') |
| | | // .replace('<h2>', '<h2 style="text-align: center;">') |
| | | // .replace('<img ','<img style="height:3.6cm;width:3.6cm"') |
| | | // .replace(/<table>/g, '<table style="border-collapse: collapse;border: 1px solid #000;">') |
| | | // .replace(/<tr>/g, '<tr style="height: 30px;">') |
| | | // .replace(/<td>/g, '<td style="border: 1px solid #000;">') |
| | | // .replace(/<p>/g, '<p style="text-indent: 2em;">') |
| | | // .replace(/<a [^>]*>/g, "") |
| | | // .replace(/<\/a>/g, "") |
| | | // console.log(11111111111,that.value) |
| | | // that.claimVisible = true; |
| | | // }) |
| | | // .done(); |
| | | // } |
| | | // } |
| | | }, |
| | | methods: { |
| | | refreshTable() { |
| | |
| | | this.componentData.entity = this.HaveJson(this.entityCopy) |
| | | this.upIndex++ |
| | | }, |
| | | handleWeave() { |
| | | this.claimVisible = true; |
| | | async handleWeave(row) { |
| | | // this.value = await file.convertFileToHtml(row.url) |
| | | // this.claimVisible = true; |
| | | this.$axios.post(this.$api.insReport.wordToHtml, { |
| | | path:row.url |
| | | }).then(res => { |
| | | if (res.code === 200) { |
| | | // console.log(11111111,res.data) |
| | | this.value = res.data.replace(/<a [^>]*>/g, "") |
| | | .replace(/<\/a>/g, "").replace(/ /g, " "); |
| | | this.claimVisible = true; |
| | | } |
| | | |
| | | }).catch(error => { |
| | | console.error(error) |
| | | }) |
| | | }, |
| | | // 权限分配 |
| | | getPower(radio) { |
| | |
| | | this.upLoad = false; |
| | | }, |
| | | confirmClaim() { |
| | | console.log(this.$refs.Word.getValue()) |
| | | // console.log(this.$refs.Word.getValue()) |
| | | }, |
| | | selectAllByOne(row){ |
| | | console.log(row); |
| | | async selectAllByOne(row){ |
| | | console.log(row,await file.convertFileToHtml(row.url)); |
| | | } |
| | | } |
| | | } |