123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246 |
- <!--扫码展示-->
- <template>
- <div id="codeHtml"
- v-loading="loading">
- <div class="w-e-text w-e-text-box" v-html="text" v-if="type==1"></div>
- <div v-if="type==2" class="pdf-max-box">
- <!--<pdf-->
- <!--ref="pdf"-->
- <!--:src="src"-->
- <!--v-for="i in numPages"-->
- <!--:key="i"-->
- <!--:page="i"-->
- <!-->-->
- <!--</pdf>-->
- <pdf
- ref="pdf"
- :src="form.content"
- v-for="i in numPages"
- :key="i"
- :page="i"
- >
- </pdf>
- </div>
- <div class="w-e-text" v-html="text" v-if="type==3"></div>
- </div>
- </template>
- <script>
- import { hazard_book_lookUp,safe_book,hazardLookUp } from "@/api/codeHtml/index";
- import pdf from 'vue-pdf'
- export default {
- components:{
- pdf
- },
- name: "codeHtml",
- data() {
- return {
- //状态数据相关
- code:"",
- type:"",
- //富文本相关
- text:"",
- //pdf相关
- numPages: null, // pdf 总页数
- form:{},
- src: '', // pdf文件地址
- // 加载样式
- loading:false,
- };
- },
- created() {
- },
- mounted(){
- this.code = this.$route.query.code;
- this.type = this.$route.query.type;
- if(this.$route.query.code&&this.$route.query.type){
- this.loading = true;
- if(this.$route.query.type==1){
- //查询危险化学品详情
- this.hazard_book_lookUp(this.$route.query.code);
- }else if(this.$route.query.type==2){
- //查询安全管理制度
- this.safe_book(this.$route.query.code);
- }else if(this.$route.query.type==3){
- //查询危险源
- this.hazardLookUp(this.$route.query.code);
- }
- }
- },
- methods: {
- //加载接口
- hazard_book_lookUp(id){
- hazard_book_lookUp(id).then( data => {
- this.text = unescape(data.data.content);
- this.loading = false;
- });
- },
- safe_book(id){
- safe_book(id).then( data => {
- this.form.content = window.location.href.split('://')[0]+'://' + this.judgmentNetworkReturnAddress() + '/' + unescape(data.data.content);
- this.getNumPages();
- });
- },
- hazardLookUp(id){
- hazardLookUp(id).then( data => {
- this.text = unescape(data.data.content);
- let list = this.text.split('font-size:');
- let newText = "";
- for (let i=0;i<list.length;i++){
- if(
- (list[i][0] == '0' || list[i][0] == '1' || list[i][0] == '2' || list[i][0] == '3' || list[i][0] == '4' || list[i][0] == '5' || list[i][0] == '6' || list[i][0] == '7' || list[i][0] == '8' || list[i][0] == '9')&&
- (list[i][1] == 'p')&&
- (list[i][2] == 'x')
- ){
- let num = this.accMul(parseInt(list[i][0]),6);
- num = num>140?140:num;
- let textNew = list[i].slice(1)
- newText = newText + 'font-size:'+num+textNew;
- }else if(
- (list[i][0] == ' ')&&
- (list[i][1] == '0' || list[i][1] == '1' || list[i][1] == '2' || list[i][1] == '3' || list[i][1] == '4' || list[i][1] == '5' || list[i][1] == '6' || list[i][1] == '7' || list[i][1] == '8' || list[i][1] == '9')&&
- (list[i][2] == 'p')&&
- (list[i][3] == 'x')
- ){
- let num = this.accMul(parseInt(list[i][1]),6);
- num = num>140?140:num;
- let textNew = list[i].slice(2)
- newText = newText + 'font-size:'+num+textNew;
- }else if(
- (list[i][0] == '0' || list[i][0] == '1' || list[i][0] == '2' || list[i][0] == '3' || list[i][0] == '4' || list[i][0] == '5' || list[i][0] == '6' || list[i][0] == '7' || list[i][0] == '8' || list[i][0] == '9')&&
- (list[i][1] == '0' || list[i][1] == '1' || list[i][1] == '2' || list[i][1] == '3' || list[i][1] == '4' || list[i][1] == '5' || list[i][1] == '6' || list[i][1] == '7' || list[i][1] == '8' || list[i][1] == '9')&&
- (list[i][2] == 'p')&&
- (list[i][3] == 'x')
- ){
- let num = this.accMul(parseInt(list[i][0]+list[i][1]),6);
- num = num>140?140:num;
- let textNew = list[i].slice(2)
- newText = newText + 'font-size:'+num+textNew;
- }else if(
- (list[i][0] == ' ')&&
- (list[i][1] == '0' || list[i][1] == '1' || list[i][1] == '2' || list[i][1] == '3' || list[i][1] == '4' || list[i][1] == '5' || list[i][1] == '6' || list[i][1] == '7' || list[i][1] == '8' || list[i][1] == '9')&&
- (list[i][2] == '0' || list[i][2] == '1' || list[i][2] == '2' || list[i][2] == '3' || list[i][2] == '4' || list[i][2] == '5' || list[i][2] == '6' || list[i][2] == '7' || list[i][2] == '8' || list[i][2] == '9')&&
- (list[i][3] == 'p')&&
- (list[i][4] == 'x')
- ){
- let num = this.accMul(parseInt(list[i][1]+list[i][2]),6);
- num = num>140?140:num;
- let textNew = list[i].slice(3)
- newText = newText + 'font-size:'+num+textNew;
- }else if(
- (list[i][0] == '0' || list[i][0] == '1' || list[i][0] == '2' || list[i][0] == '3' || list[i][0] == '4' || list[i][0] == '5' || list[i][0] == '6' || list[i][0] == '7' || list[i][0] == '8' || list[i][0] == '9')&&
- (list[i][1] == '0' || list[i][1] == '1' || list[i][1] == '2' || list[i][1] == '3' || list[i][1] == '4' || list[i][1] == '5' || list[i][1] == '6' || list[i][1] == '7' || list[i][1] == '8' || list[i][1] == '9')&&
- (list[i][2] == '0' || list[i][2] == '1' || list[i][2] == '2' || list[i][2] == '3' || list[i][2] == '4' || list[i][2] == '5' || list[i][2] == '6' || list[i][2] == '7' || list[i][2] == '8' || list[i][2] == '9')&&
- (list[i][3] == 'p')&&
- (list[i][4] == 'x')
- ){
- let num = this.accMul(parseInt(list[i][0]+list[i][1]+list[i][2]),6);
- num = num>140?140:num;
- let textNew = list[i].slice(3)
- newText = newText + 'font-size:'+num+textNew;
- }else if(
- (list[i][0] == ' ')&&
- (list[i][1] == '0' || list[i][1] == '1' || list[i][1] == '2' || list[i][1] == '3' || list[i][1] == '4' || list[i][1] == '5' || list[i][1] == '6' || list[i][1] == '7' || list[i][1] == '8' || list[i][1] == '9')&&
- (list[i][2] == '0' || list[i][2] == '1' || list[i][2] == '2' || list[i][2] == '3' || list[i][2] == '4' || list[i][2] == '5' || list[i][2] == '6' || list[i][2] == '7' || list[i][2] == '8' || list[i][2] == '9')&&
- (list[i][3] == '0' || list[i][3] == '1' || list[i][3] == '2' || list[i][3] == '3' || list[i][3] == '4' || list[i][3] == '5' || list[i][3] == '6' || list[i][3] == '7' || list[i][3] == '8' || list[i][3] == '9')&&
- (list[i][4] == 'p')&&
- (list[i][5] == 'x')
- ){
- let num = this.accMul(parseInt(list[i][1]+list[i][2]+list[i][3]),6);
- num = num>140?140:num;
- let textNew = list[i].slice(4)
- newText = newText + 'font-size:'+num+textNew;
- }else{
- newText = newText + list[i]
- }
- }
- this.$set(this,'text',newText);
- this.loading = false;
- });
- },
- getNumPages() {
- let loadingTask = pdf.createLoadingTask(this.form.content)
- loadingTask.promise.then(pdf => {
- this.numPages = pdf.numPages;
- this.loading = false;
- }).catch(err => {
- console.error('pdf 加载失败', err);
- })
- },
- //pdf方法
- changePdfPage (val) {
- // console.log(val)
- if (val === 0 && this.currentPage > 1) {
- this.currentPage--
- // console.log(this.currentPage)
- }
- if (val === 1 && this.currentPage < this.pageCount) {
- this.currentPage++
- // console.log(this.currentPage)
- }
- },
- // pdf加载时
- loadPdfHandler (e) {
- this.currentPage = 1 // 加载的时候先加载第一页
- },
- accMul(arg1,arg2){
- var m=0,s1=arg1.toString(),s2=arg2.toString();
- try{m+=s1.split(".")[1].length}catch(e){}
- try{m+=s2.split(".")[1].length}catch(e){}
- return Number(s1.replace(".",""))*Number(s2.replace(".",""))/Math.pow(10,m)
- },
- }
- };
- </script>
- <style lang="scss">
- #codeHtml{
- font-size:80px;
- video{
- width:1820px;
- height:1050px;
- margin:20px;
- }
- img{
- width:1500px;
- margin:20px 200px;
- }
- }
- </style>
- <style scoped lang="scss">
- #codeHtml {
- height:100%;
- overflow:hidden;
- display: flex;
- flex-direction: column;
- .pdf-max-box{
- flex:1;
- overflow-y: scroll;
- }
- .top-button-box{
- width:100%;
- display: flex;
- .null-p{
- flex:1;
- }
- }
- .w-e-text{
- flex:1;
- }
- .w-e-text.table::-webkit-scrollbar{
- width: 4px; /*高宽分别对应横竖滚动条的尺寸*/
- height: 4px;
- }
- .w-e-text.table::-webkit-scrollbar-thumb{
- border-radius: 5px;
- -webkit-box-shadow: inset 0 0 5px #999;
- background: #fff;
- }
- .w-e-text.table::-webkit-scrollbar-track{
- -webkit-box-shadow: inset 0 0 5px rgba(255,255,255,0);
- border-radius: 0;
- background: rgba(255,255,255,0);
- }
- }
- </style>
|