峰峰执法平台简易案件程序板块 pad端
Two
yang
2022-10-26 9b964f286f78aa75b2b1badb6361c63bdd95e545
Two
9个文件已修改
1个文件已添加
439 ■■■■ 已修改文件
src/App.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/router/pad/index.js 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/styles/common.scss 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/padSunmaryProcedure/Home.vue 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/padSunmaryProcedure/padFrom.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/padSunmaryProcedure/padWord.vue 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/padSunmaryProcedure/word-view.vue 165 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/padSunmaryProcedure/word_mange/mangeBL.vue 130 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/padSunmaryProcedure/word_mange/mangeGZ.vue 31 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/padSunmaryProcedure/word_mange/mangeJD.vue 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/App.vue
@@ -22,6 +22,9 @@
  h1,h2,h3{
    margin:0;
  }
  body{
    width: 100%;
  }
  #app {
    width: 100%;
    height: 100%;
src/router/pad/index.js
@@ -21,5 +21,10 @@
    name: '案件填报流程',
    component: () =>
      import(/* webpackChunkName: "page" */ '@/views/padSunmaryProcedure/padWord')
  },{
    path: '/WordYulan',
    name: 'word预览',
    component: () =>
      import(/* webpackChunkName: "page" */ '@/views/padSunmaryProcedure/word-view')
  }]
}]
src/styles/common.scss
@@ -63,7 +63,7 @@
  font-size: 18px;
}
@media screen and (max-width: 1200px) {
/*@media screen and (max-width: 1200px) {
  body{
    width: 1200px;
  }
@@ -100,4 +100,4 @@
      max-width: 130px!important;
    }
  }
}
}*/
src/views/padSunmaryProcedure/Home.vue
@@ -11,23 +11,30 @@
</script>
<style scoped>
  @media screen and (min-width: 1920px){
    html{
.padHome{
  height: 100%;
  overflow: auto;
}
/*  @media screen and (min-width: 1200px){
    .padHome{
      font-size: 12px;
      width: 100%;
      height: 100%;
    }
  }
  @media screen and (min-width: 1920px){
    html{
      font-size: 12px;
  @media only screen and (min-width: 768px) and(max-width: 1199px) {
    .padHome{
      font-size: 16px;
      width: 100%;
      height: 100%;
    }
  }
  @media screen and (min-width: 1920px){
    html{
      font-size: 12px;
  @media only screen and (max-width: 768px) {
    .padHome{
      font-size: 16px;
      width: 100%;
      height: 100%;
    }
  }
  .padHome{
    width: 100%;
    height: 100%;
  }
  }*/
</style>
src/views/padSunmaryProcedure/padFrom.vue
@@ -78,6 +78,9 @@
    },
    onSubmit(){
      this.form.hanlderIds=this.form.hanlderIds.toString()
      if (this.dataForm.hanlderIds.length < 1) {
        this.dataForm.hanlders = '';
      }
      easycase(this.form).then(res =>{
        this.backAll()
      })
src/views/padSunmaryProcedure/padWord.vue
@@ -1,11 +1,12 @@
<template>
  <div style="width: 100vw;height: 100%;overflow: auto;font-size: 20px">
  <div style="width: 100%;height: 100%;overflow: auto;">
    <div id="navs">
      <el-button icon="el-icon-arrow-left" @click="goHome">返回</el-button>
      <div>{{ name1 }}</div>
      <el-button icon="el-icon-upload el-icon--right" @click="submit">提交</el-button>
    </div>
    <el-tabs type="border-card" style="margin-top: 10px!important;" v-model="activeName" @tab-click="handleClick" :stretch="true">
    <el-tabs type="border-card" style="margin-top: 10px!important;" v-model="activeName" @tab-click="handleClick"
             :stretch="true">
      <el-tab-pane label="调查询问笔录" name="first">
        <BiLu :id="id"></BiLu>
      </el-tab-pane>
@@ -27,35 +28,36 @@
export default {
  name: "padWord",
  components:{
  components: {
    BiLu,
    GaiZheng,
    JueDingShu,
  },
  data() {
    return {
      id:'',
      name1:"",
      id: '',
      name1: "",
      activeName: 'second'
    }
  },
  created() {
    if (this.$route.query) {
      this.id = this.$route.query.id
      this.name1 = this.$route.query.name
      // this.$nextTick(() => {
        this.id = this.$route.query.id
        this.name1 = this.$route.query.name
      // })
    }
  },
  methods: {
    goHome(){
    goHome() {
      this.$router.push({
        path: '/pad',
      })
    },
    submit(){
      /*submitcase().then(res =>{
    submit() {
      submitcase(this.id).then(res => {
        this.goHome()
      })*/
      this.goHome()
      })
    },
    /*goToBL() {
      this.$router.push({
@@ -72,16 +74,19 @@
}
</script>
<style lang="scss" scoped>
.el-tabs__content{
<style lang="scss">
.el-tabs__content {
  height: calc(100vh - 110px);
  overflow-y: auto;
}
#navs{
#navs {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
#box {
  width: 80%;
  display: flex;
src/views/padSunmaryProcedure/word-view.vue
New file
@@ -0,0 +1,165 @@
<template>
  <div class="docWrap">
    <!-- 预览文件的地方(用于渲染) -->
    <div ref="word"></div>
  </div>
</template>
<script>
import {viewD, exportDoc, urlToBase64, viewWithImg, exportDocWidthImg} from "@/libs/word"
export default {
  components: {},
  data() {
    return {
      dataForm: {},
      imgList: []
    };
  },
  created() {
    console.log(this.$route,'this.$route======')
    if (this.$route.query) {
      if(this.$route.query.wordData){
        // this.dataForm = this.$route.query.wordData
        this.$nextTick(() => {
          viewD(this.$route.query.wordData, this.$route.query.src,this.$refs.word)
        })
      }else {
        // this.dataForm = this.$route.query.dawordData
        this.$nextTick(() => {
          exportDoc(this.$route.query.wordData, this.$route.query.src,this.$refs.word)
        })
      }
    }
  },
  methods: {
    /*initMS(obj, url, arry, imgSize) {  //行政处罚没收财物处理审批表返回的数据和其它表不一样(没有publicOpinion对象)
      let that = this
      if (arry.length > 0) {
        for (let i = 0; i < arry.length; i++) {
          urlToBase64(obj[arry[i]], function (baseStr) {
            obj[arry[i]] = baseStr
            that.$set(obj, arry[i], obj[arry[i]])
          })
        }
        setTimeout(() => {
          viewWithImg(obj, url, this.$refs.word, imgSize);
        }, 1000)
      }
    },*/
    initMore(obj, url, arry, imgSize) {  //页面有多张签名照片的
      let that = this
      if (arry.length > 0) {
        for (let i = 0; i < arry.length; i++) {
          if (obj.publicOpinion) {
            urlToBase64(obj.publicOpinion[arry[i]], function (baseStr) {
              obj.publicOpinion[arry[i]] = baseStr
              that.$set(obj, arry[i], obj.publicOpinion[arry[i]])
            })
          }
        }
        setTimeout(() => {
          viewWithImg(obj, url, this.$refs.word, imgSize);
        }, 1000)
      }
    },
    init(obj, url, type, imgSize) {  //页面只有一处有照片回显的(包含一处有多张图片)
      if (type != null && type != '' && type != undefined) {
        // let aabb = "http://localhost:8080/admin/sys-file/platform/75968ac641154184bce1a1c38b486291.png"
        if (obj[type] != '') {
          let img = obj[type].split(',')
          let that = this;
          let imgList = []
          for (let i = 0; i < img.length; i++) {
            urlToBase64(img[i], function (baseStr) {
              img[i] = baseStr;
              imgList.push({
                img: img[i]
              })
            })
            that.$set(obj, 'imgList', imgList)
          }
          setTimeout(() => {
            viewWithImg(obj, url, that.$refs.word, imgSize);
          }, 1000)
        } else {
          viewD(obj, url, this.$refs.word);
        }
      } else {
        viewD(obj, url, this.$refs.word);
      }
    },
    exportDocMS(obj, url, name, arry, imgSize) { //行政处罚没收财物处理审批表返回的数据和其它表不一样(没有publicOpinion对象)
      let that = this
      if (arry.length > 0) {
        for (let i = 0; i < arry.length; i++) {
          urlToBase64(obj[arry[i]], function (baseStr) {
            obj[arry[i]] = baseStr
            that.$set(obj, arry[i], obj[arry[i]])
          })
        }
      }
      setTimeout(() => {
        exportDocWidthImg(obj, url, name, imgSize)
      }, 1000)
    },
    exportDocMore(obj, url, name, arry, imgSize) { //页面有多张签名照片的
      let that = this
      if (arry.length > 0) {
        for (let i = 0; i < arry.length; i++) {
          if (obj.publicOpinion) {
            urlToBase64(obj.publicOpinion[arry[i]], function (baseStr) {
              obj.publicOpinion[arry[i]] = baseStr
              that.$set(obj, arry[i], obj.publicOpinion[arry[i]])
            })
          }
        }
      }
      setTimeout(() => {
        exportDocWidthImg(obj, url, name, imgSize)
      }, 1000)
    },
    exportDoc(obj, url, name, type, imgSize) {
      this.imgList = []
      let that = this
      if (type != null && type != '') {
        let img = obj[type].split(',')
        for (let i = 0; i < img.length; i++) {
          urlToBase64(img[i], function (baseStr) {
            img[i] = baseStr;
            that.imgList.push({
              img: img[i]
            })
          })
          that.$set(obj, 'imgList', that.imgList)
          // exportDocWidthImg(obj,url,name,imgSize);
        }
        setTimeout(() => {
          exportDocWidthImg(obj, url, name, imgSize)
        }, 1000)
        // await exportDocWidthImg(obj,url,name,imgSize);
      } else {
        exportDoc(obj, url, name);
      }
    },
  }
};
</script>
<style>
.docx-wrapper {
  background: white !important;
}
.docx p {
  text-align: center;
}
.docx p:nth-child(0) > span:nth-child(3) {
  margin-left: -45px;
}
</style>
src/views/padSunmaryProcedure/word_mange/mangeBL.vue
@@ -93,13 +93,14 @@
      </el-row>
      <div class="qianzi" style="margin-left: 85px">
        <span>表明身份、出示证件:我们是峰峰矿区综合行政执法局的行政执法人员,这是执法证件请你过目确认,如无异议请在此签字:</span>
<!--        <el-input v-model="form.interrogeeName" placeholder="请填写被询问人" style="width: 160px!important;"></el-input>-->
        <!--        <el-input v-model="form.interrogeeName" placeholder="请填写被询问人" style="width: 160px!important;"></el-input>-->
        <div id="imges">
          <button @click="goQianzi()">签字</button>
          <button @click="gozhiwen()">指纹</button>
          <button @click="look()">查看</button>
          <el-image v-if="false" @click="goQianzi()" style="height: 3em!important;width: 3em!important;" src="/images/1.png" alt="请签字"/>
          <el-image v-if="false" style="height: 3em!important;width: 3em!important;" src="/images/2.png" alt="请录入指纹"/>
          <button v-if="form.signature ==''||form.signature ==null" @click="goQianzi()">去签名</button>
          <button v-if="form.fingerprint ==''||form.fingerprint ==null" @click="gozhiwen()">录指纹</button>
          <el-image v-if="form.signature !=''" style="height: 3em!important;width: 3em!important;"
                    :src="form.signature" alt="请签字"/>
          <el-image v-if="form.fingerprint !=''" :class="form.fingerprint?'imgBox':''" style="height: 2em!important;width: 2em!important;" :src="form.fingerprint" alt="请录入指纹"/>
        </div>
      </div>
      <p style="margin-left: 85px">
@@ -123,27 +124,27 @@
      </ul>
      <el-form-item label-width="50%">
        <el-button type="primary" icon="el-icon-circle-plus" @click="addEle">
<!--          <img src="../../../assets/lawImg/addIcon.png" alt="">-->
          <!--          <img src="../../../assets/lawImg/addIcon.png" alt="">-->
        </el-button>
      </el-form-item>
    </el-form>
    <div style="text-align: center">
      <el-button v-if="form.registerState=='0'" @click="dataFormSubmit('0')">保存</el-button>
      <el-button type="primary" @click="viewVord(dataForm)">预览</el-button>
      <el-button v-if="form.registerState=='1'"type="success" @click="downloadWord(dataForm)">下载</el-button>
      <el-button v-if="form.registerState=='0'||form.registerState==null" @click="dataFormSubmit('0')">保存</el-button>
      <el-button type="primary" @click="viewVord(form)">预览</el-button>
      <el-button v-if="form.registerState=='1'" type="success" @click="downloadWord(form)">下载</el-button>
    </div>
  </el-main>
</template>
<script>
import {inquiry,inquiryquestion} from '../../../api/News/pad'
import {inquiry, inquiryquestion} from '../../../api/News/pad'
export default {
  name: "mangeBL",
  props:['id'],
  props: ['id'],
  data() {
    return {
      props:['id'],
      props: ['id'],
      value1: [],
      form: {
        causePoint: "",
@@ -162,25 +163,27 @@
        inquirerNumberOne: "",
        inquirerNameTwo: "",
        inquirerNumberTwo: "",
        answer:"",
        questionsAnswers:[
        answer: "",
        questionsAnswers: [
          {
            wen:'',
            da:'',
            wen: '',
            da: '',
          }
        ],
        fingerprint:"",
        fingerprint: "",
      },
    }
  },
  created() {
    this.getDataList()
    window.getSignUrl =this.getSignUrl;
    window.getFingerUrl =this.getFingerUrl;
// this.getSignUrl();
  },
  methods: {
    getDataList(){
      inquiryquestion(this.id).then(res =>{
        this.form =res.data.data
    getDataList() {
      inquiryquestion(this.id).then(res => {
        this.form = res.data.data
        this.value1.push(res.data.data.startTime)
        this.value1.push(res.data.data.endTime)
      })
@@ -192,27 +195,72 @@
        da: '',
      });
    },
    look(){
      this.form.questionsAnswers.da = window.android.getSignUrl(url);
      this.form.questionsAnswers.wen =window.android.getFingerUrl(url);
    getSignUrl(url){
      this.form.signature = url;
    },
    getFingerUrl(url1){
      this.form.fingerprint = url1;
    },
    //点击跳转签字页面
    goQianzi(){
    goQianzi() {
      window.android.toSign();
    },
    gozhiwen(){
       window.android.toFinger();
    gozhiwen() {
      window.android.toFinger();
    },
    //点击保存数据
    dataFormSubmit(){
    dataFormSubmit() {
      this.form.startTime = this.value1[0]
      this.form.endTime = this.value1[1]
      this.form.registerId = this.id
      inquiry(this.form).then(res =>{
      inquiry(this.form).then(res => {
        if (res.data.code == 0) {
          this.$message.success("保存成功");
        }
      })
    },
    //点击预览
    viewVord(data) {
      // let wordData = this.transforData(data);
      this.$router.push({
        path: '/WordYulan',
        query: {
          wordData: data,
          src:'/wordes/inquiryCause.docx'
        }
      })
    },
    //点击下载
    downloadWord(data){
      this.$router.push({
        path: '/WordYulan',
        query: {
          downWordData: data,
          src:'/wordes/inquiryCause.docx'
        }
      })
      // WordView.methods.exportDoc(wordData, "/wordes/inquiryCause.docx", "调查询问笔录.docx")
    },
    // 遍历数据
    transforData(obj) {
      let s = JSON.stringify(obj);
      let data = JSON.parse(s);
      let str = JSON.stringify(data);
      let jsonData = JSON.parse(str);
      data = jsonData;
      if (data.startTime != '' && data.startTime != null) {
        data.startTime = moment(data.startTime).format('YYYY年MM月DD日HH时mm分');
      } else {
        data.startTime = '  年  月  日  时  分'
      }
      if (data.endTime != '' && data.endTime != null) {
        data.endTime = moment(data.endTime).format('HH时mm分');
      } else {
        data.endTime = '  时  分'
      }
    }
  },
}
@@ -220,25 +268,27 @@
<style lang="scss" scoped>
//.qianzi {
  //display: flex;
  /*justify-content: space-between;*/
  //align-items: center;
  /*flex-wrap: wrap;*/
//display: flex;
/*justify-content: space-between;*/
//align-items: center;
/*flex-wrap: wrap;*/
//}
.el-input{
  border: none!important;
.el-input {
  border: none !important;
}
/*.el-image{
  width: 10rem!important;
  height: 10rem!important;
}*/
#imges{
#imges {
  display: block;
  position: relative;
  .imgBox{
    position: absolute!important;
  .imgBox {
    position: absolute !important;
    left: 0;
    bottom: 0;
    top: 50%;
  }
}
src/views/padSunmaryProcedure/word_mange/mangeGZ.vue
@@ -102,9 +102,9 @@
    </el-row>
  </el-form>
  <div style="text-align: center">
    <el-button v-if="form.registerState=='0'" @click="dataFormSubmit('0')">保存</el-button>
    <el-button type="primary" @click="viewVord(dataForm)">预览</el-button>
    <el-button v-if="form.registerState=='1'"type="success" @click="downloadWord(dataForm)">下载</el-button>
    <el-button v-if="form.registerState=='0'||form.registerState==null" @click="dataFormSubmit('0')">保存</el-button>
    <el-button type="primary" @click="viewVord(form)">预览</el-button>
    <el-button v-if="form.registerState=='1'" type="success" @click="downloadWord(form)">下载</el-button>
  </div>
</el-main>
</template>
@@ -148,14 +148,35 @@
      })
    },
    dataFormSubmit(){
      this.form.registerId = this.id
      ordercorrec(this.form).then(res =>{
        if (res.data.code == 0) {
          this.$message.success("操作成功");
        }
      })
    }
    },
    //点击预览
    viewVord(data) {
      // let wordData = this.transforData(data);
      this.$router.push({
        path: '/WordYulan',
        query: {
          wordData: data,
          src:'/wordes/correctionNotice.docx'
        }
      })
    },
    //点击下载
    downloadWord(data){
      this.$router.push({
        path: '/WordYulan',
        query: {
          downWordData: data,
          src:'/wordes/correctionNotice.docx'
        }
      })
      // WordView.methods.exportDoc(wordData, "/wordes/inquiryCause.docx", "调查询问笔录.docx")
    },
  },
}
</script>
src/views/padSunmaryProcedure/word_mange/mangeJD.vue
@@ -111,9 +111,9 @@
    </el-form>
    <div style="text-align: center">
      <el-button v-if="form.registerState=='0'" @click="dataFormSubmit('0')">保存</el-button>
      <el-button type="primary" @click="viewVord(dataForm)">预览</el-button>
      <el-button v-if="form.registerState=='1'"type="success" @click="downloadWord(dataForm)">下载</el-button>
      <el-button v-if="form.registerState=='0'||form.registerState==null" @click="dataFormSubmit('0')">保存</el-button>
      <el-button type="primary" @click="viewVord(form)">预览</el-button>
      <el-button v-if="form.registerState=='1'" type="success" @click="downloadWord(form)">下载</el-button>
    </div>
  </el-main>
</template>
@@ -157,7 +157,29 @@
          this.$message.success("保存成功");
        }
      })
    }
    },
    //点击预览
    viewVord(data) {
      // let wordData = this.transforData(data);
      this.$router.push({
        path: '/WordYulan',
        query: {
          wordData: data,
          src:'/wordes/penaltyDecision.docx'
        }
      })
    },
    //点击下载
    downloadWord(data){
      this.$router.push({
        path: '/WordYulan',
        query: {
          downWordData: data,
          src:'/wordes/penaltyDecision.docx'
        }
      })
      // WordView.methods.exportDoc(wordData, "/wordes/inquiryCause.docx", "调查询问笔录.docx")
    },
  },
}
</script>