Browse Source

拖拽放大修改

wengyuwen 4 năm trước cách đây
mục cha
commit
751661188e

+ 111 - 1
src/views/agreement/agreementTask/index.vue

@@ -250,7 +250,25 @@
       @pagination="getList"
     />
     <!-- 添加或修改作业费对话框 -->
-    <el-dialog :title="title" :visible.sync="open" :show-close="Xbutton" width="65%" append-to-body :before-close="handleClose" :close-on-click-modal="false">
+    <el-dialog
+      v-dialogDrag
+      :fullscreen="dialogFull"
+      :title="title"
+      :visible.sync="open"
+      :show-close="Xbutton"
+      width="65%" append-to-body
+      :before-close="handleClose"
+      :close-on-click-modal="false">
+      <template slot="title">
+        <div class="avue-crud__dialog__header">
+            <span class="el-dialog__title">
+            <span style="display:inline-block;width:3px;height:20px;margin-right:5px; float: left;margin-top:2px"></span>
+            </span>
+          <div class="avue-crud__dialog__menu enlarge" @click="full">
+            <i  style="cursor: pointer;display: block;width:12px;height:12px;border:1px solid #909399;border-top:3px solid #909399;margin-top: -3px;"></i>
+          </div>
+        </div>
+      </template>
       <el-form ref="form" :model="form" :rules="rules" label-width="80px"
                style="display: flex;flex-wrap: wrap;">
         <el-form-item label="客户名称" prop="fCorpid">
@@ -460,6 +478,61 @@
   import AddOrUpdate from '@/views/viewApproval'
   import ApprovalComments from '@/views/startApproval'
   import Global from '@/layout/components/global.js'
+  import Vue from 'vue'
+  Vue.directive('dialogDrag', {
+    bind(el, binding, vnode, oldVnode) {
+      const dialogHeaderEl = el.querySelector('.el-dialog__header')
+      const dragDom = el.querySelector('.el-dialog')
+      const enlarge = el.querySelector('.enlarge')
+      dialogHeaderEl.style.cursor = 'move'
+
+      // 获取原有属性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
+      const sty = dragDom.currentStyle || window.getComputedStyle(dragDom, null)
+      if(enlarge){
+        enlarge.onclick = (e) => {
+          dragDom.style.top = '0px'
+          dragDom.style.left = '0px'
+        }
+      }
+      dialogHeaderEl.onmousedown = (e) => {
+        // 鼠标按下,计算当前元素距离可视区的距离
+        const disX = e.clientX - dialogHeaderEl.offsetLeft
+        const disY = e.clientY - dialogHeaderEl.offsetTop
+
+        // 获取到的值带px 正则匹配替换
+        let styL, styT
+
+        // 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px
+        if (sty.left.includes('%')) {
+          styL = +document.body.clientWidth * (+sty.left.replace(/\%/g, '') / 100)
+          styT = +document.body.clientHeight * (+sty.top.replace(/\%/g, '') / 100)
+        } else {
+          styL = +sty.left.replace(/\px/g, '')
+          styT = +sty.top.replace(/\px/g, '')
+        }
+
+        document.onmousemove = function(e) {
+          // 通过事件委托,计算移动的距离
+          const l = e.clientX - disX
+          const t = e.clientY - disY
+
+          // 移动当前元素
+
+          if ((t + styT) >= 0){
+            dragDom.style.top = `${t + styT}px`
+          }
+          dragDom.style.left = `${l + styL}px`
+          // 将此时的位置传出去
+          // binding.value({x:e.pageX,y:e.pageY})
+        }
+
+        document.onmouseup = function(e) {
+          document.onmousemove = null
+          document.onmouseup = null
+        }
+      }
+    }
+  })
 
 export default {
   name: 'Agreement',
@@ -469,6 +542,8 @@ export default {
   },
   data() {
     return {
+      //全屏放大
+      dialogFull:false,
       addOrEdid:1,
       idCopy:'',
       stop:false,
@@ -601,6 +676,9 @@ export default {
     this.adoPt()
   },
   methods: {
+    full(){
+      this.dialogFull = !this.dialogFull
+    },
     changefDc(){
       if(this.form.fDc === 'D'){
         let queryParams = { pageNum: 1, pageSize: 10, fDc:'D'};
@@ -1102,3 +1180,35 @@ export default {
   }
 }
 </script>
+<style lang="scss">
+.avue-crud__dialog__header {
+  display: -webkit-box;
+  display: -ms-flexbox;
+  display: flex;
+  -webkit-box-align: center;
+  -ms-flex-align: center;
+  align-items: center;
+  -webkit-box-pack: justify;
+  -ms-flex-pack: justify;
+  justify-content: space-between;
+}
+.el-dialog__title {
+  color: rgba(0,0,0,.85);
+  font-weight: 500;
+  word-wrap: break-word;
+}
+.avue-crud__dialog__menu {
+  padding-right: 20px;
+  float: left;
+}
+.avue-crud__dialog__menu i {
+  color: #909399;
+  font-size: 15px;
+}
+.el-icon-full-screen{
+  cursor: pointer;
+}
+.el-icon-full-screen:before {
+  content: "\e719";
+}
+</style>

+ 115 - 3
src/views/basicdata/corps/index.vue

@@ -179,7 +179,27 @@
     />
 
     <!-- 添加或修改客户详情对话框 -->
-    <el-dialog :title="title" :visible.sync="open" close-on-click-modal="false" width="80%" :close-on-click-modal="false" append-to-body>
+    <el-dialog
+      v-dialogDrag
+      :fullscreen="dialogFull"
+      :title="title"
+      :visible.sync="open"
+      close-on-click-modal="false"
+      width="80%"
+      :close-on-click-modal="false"
+      append-to-body>
+      <template slot="title">
+        <div class="avue-crud__dialog__header">
+            <span class="el-dialog__title">
+            <span style="display:inline-block;width:3px;height:20px;margin-right:5px; float: left;margin-top:2px"></span>
+            添加客户详情
+            </span>
+          <div class="avue-crud__dialog__menu enlarge" @click="full">
+            <i  style="cursor: pointer;display: block;width:12px;height:12px;border:1px solid #909399;border-top:3px solid #909399;margin-top: -3px;"></i>
+          </div>
+        </div>
+      </template>
+
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
 
         <el-row>
@@ -341,12 +361,12 @@
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="本位币账号" prop="fBankno">
+            <el-form-item label="本位币账号" prop="fBankno" label-width="100">
               <el-input v-model="form.fBankno" style="width: 250px" placeholder="请输入本位币账号" />
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="本位币银行" prop="fBankname">
+            <el-form-item label="本位币银行" label-width="100" prop="fBankname">
               <el-input v-model="form.fBankname" style="width: 250px" placeholder="请输入本位币银行" />
             </el-form-item>
           </el-col>
@@ -470,6 +490,61 @@
   import { listCorps, getCorps, delCorps, addCorps, updateCorps, changeCorpsStatus,exportCorps } from "@/api/basicdata/corps";
   import {queryUserVal} from "@/api/system/user";
   import { isArray } from '@/utils/validate'
+  import Vue from 'vue'
+  Vue.directive('dialogDrag', {
+    bind(el, binding, vnode, oldVnode) {
+      const dialogHeaderEl = el.querySelector('.el-dialog__header')
+      const dragDom = el.querySelector('.el-dialog')
+      const enlarge = el.querySelector('.enlarge')
+      dialogHeaderEl.style.cursor = 'move'
+
+      // 获取原有属性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
+      const sty = dragDom.currentStyle || window.getComputedStyle(dragDom, null)
+      if(enlarge){
+        enlarge.onclick = (e) => {
+          dragDom.style.top = '0px'
+          dragDom.style.left = '0px'
+        }
+      }
+      dialogHeaderEl.onmousedown = (e) => {
+        // 鼠标按下,计算当前元素距离可视区的距离
+        const disX = e.clientX - dialogHeaderEl.offsetLeft
+        const disY = e.clientY - dialogHeaderEl.offsetTop
+
+        // 获取到的值带px 正则匹配替换
+        let styL, styT
+
+        // 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px
+        if (sty.left.includes('%')) {
+          styL = +document.body.clientWidth * (+sty.left.replace(/\%/g, '') / 100)
+          styT = +document.body.clientHeight * (+sty.top.replace(/\%/g, '') / 100)
+        } else {
+          styL = +sty.left.replace(/\px/g, '')
+          styT = +sty.top.replace(/\px/g, '')
+        }
+
+        document.onmousemove = function(e) {
+          // 通过事件委托,计算移动的距离
+          const l = e.clientX - disX
+          const t = e.clientY - disY
+
+          // 移动当前元素
+
+          if ((t + styT) >= 0){
+            dragDom.style.top = `${t + styT}px`
+          }
+          dragDom.style.left = `${l + styL}px`
+          // 将此时的位置传出去
+          // binding.value({x:e.pageX,y:e.pageY})
+        }
+
+        document.onmouseup = function(e) {
+          document.onmousemove = null
+          document.onmouseup = null
+        }
+      }
+    }
+  })
 
   export default {
     name: "Corps",
@@ -477,6 +552,8 @@
     },
     data() {
       return {
+        //全屏放大
+        dialogFull:false,
         contactList:[],
         // 遮罩层
         loading: true,
@@ -574,6 +651,9 @@
       });
     },
     methods: {
+      full(){
+        this.dialogFull = !this.dialogFull
+      },
       // 客户类别默认为客户结算方式默认月结
       query() {
         this.$set(this.form, "fStltypeid", 1);
@@ -787,3 +867,35 @@
     }
   };
 </script>
+<style lang="scss">
+.avue-crud__dialog__header {
+  display: -webkit-box;
+  display: -ms-flexbox;
+  display: flex;
+  -webkit-box-align: center;
+  -ms-flex-align: center;
+  align-items: center;
+  -webkit-box-pack: justify;
+  -ms-flex-pack: justify;
+  justify-content: space-between;
+}
+.el-dialog__title {
+  color: rgba(0,0,0,.85);
+  font-weight: 500;
+  word-wrap: break-word;
+}
+.avue-crud__dialog__menu {
+  padding-right: 20px;
+  float: left;
+}
+.avue-crud__dialog__menu i {
+  color: #909399;
+  font-size: 15px;
+}
+.el-icon-full-screen{
+  cursor: pointer;
+}
+.el-icon-full-screen:before {
+  content: "\e719";
+}
+</style>

+ 112 - 2
src/views/basicdata/dept/index.vue

@@ -100,7 +100,25 @@
     </el-table>
 
     <!-- 添加或修改仓库对话框 -->
-    <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="70%" append-to-body>
+    <el-dialog
+      v-dialogDrag
+      :fullscreen="dialogFull"
+      :title="title"
+      :visible.sync="open"
+      :close-on-click-modal="false"
+      width="70%" append-to-body>
+      <template slot="title">
+        <div class="avue-crud__dialog__header">
+            <span class="el-dialog__title">
+            <span style="display:inline-block;width:3px;height:20px;margin-right:5px; float: left;margin-top:2px"></span>
+            添加仓库
+            </span>
+          <div class="avue-crud__dialog__menu enlarge" @click="full">
+            <i  style="cursor: pointer;display: block;width:12px;height:12px;border:1px solid #909399;border-top:3px solid #909399;margin-top: -3px;"></i>
+          </div>
+        </div>
+      </template>
+
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
         <el-row>
           <el-col :span="8" v-if="form.parentId !== 0">
@@ -133,7 +151,7 @@
         <el-row>
           <el-col :span="8">
             <el-form-item label="显示排序" prop="orderNum">
-              <el-input-number v-model="form.orderNum" controls-position="right" :min="0" />
+              <el-input-number v-model="form.orderNum" style="width:100%" controls-position="right" :min="0" />
             </el-form-item>
           </el-col>
 
@@ -210,12 +228,68 @@
 import { listDept, getDept, delDept, addDept, updateDept, listDeptExcludeChild } from "@/api/basicdata/dept";
 import Treeselect from "@riophae/vue-treeselect";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+import Vue from 'vue'
+Vue.directive('dialogDrag', {
+  bind(el, binding, vnode, oldVnode) {
+    const dialogHeaderEl = el.querySelector('.el-dialog__header')
+    const dragDom = el.querySelector('.el-dialog')
+    const enlarge = el.querySelector('.enlarge')
+    dialogHeaderEl.style.cursor = 'move'
+
+    // 获取原有属性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
+    const sty = dragDom.currentStyle || window.getComputedStyle(dragDom, null)
+    if(enlarge){
+      enlarge.onclick = (e) => {
+        dragDom.style.top = '0px'
+        dragDom.style.left = '0px'
+      }
+    }
+    dialogHeaderEl.onmousedown = (e) => {
+      // 鼠标按下,计算当前元素距离可视区的距离
+      const disX = e.clientX - dialogHeaderEl.offsetLeft
+      const disY = e.clientY - dialogHeaderEl.offsetTop
+
+      // 获取到的值带px 正则匹配替换
+      let styL, styT
+
+      // 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px
+      if (sty.left.includes('%')) {
+        styL = +document.body.clientWidth * (+sty.left.replace(/\%/g, '') / 100)
+        styT = +document.body.clientHeight * (+sty.top.replace(/\%/g, '') / 100)
+      } else {
+        styL = +sty.left.replace(/\px/g, '')
+        styT = +sty.top.replace(/\px/g, '')
+      }
+
+      document.onmousemove = function(e) {
+        // 通过事件委托,计算移动的距离
+        const l = e.clientX - disX
+        const t = e.clientY - disY
 
+        // 移动当前元素
+
+        if ((t + styT) >= 0){
+          dragDom.style.top = `${t + styT}px`
+        }
+        dragDom.style.left = `${l + styL}px`
+        // 将此时的位置传出去
+        // binding.value({x:e.pageX,y:e.pageY})
+      }
+
+      document.onmouseup = function(e) {
+        document.onmousemove = null
+        document.onmouseup = null
+      }
+    }
+  }
+})
 export default {
   name: "Dept",
   components: { Treeselect },
   data() {
     return {
+      //全屏放大
+      dialogFull:false,
       // 遮罩层
       loading: true,
       // 显示搜索条件
@@ -276,6 +350,10 @@ export default {
     });
   },
   methods: {
+    //全屏放大
+    full(){
+      this.dialogFull = !this.dialogFull
+    },
     /** 查询仓库列表 */
     getList() {
       this.loading = true;
@@ -390,3 +468,35 @@ export default {
   }
 };
 </script>
+<style lang="scss">
+.avue-crud__dialog__header {
+  display: -webkit-box;
+  display: -ms-flexbox;
+  display: flex;
+  -webkit-box-align: center;
+  -ms-flex-align: center;
+  align-items: center;
+  -webkit-box-pack: justify;
+  -ms-flex-pack: justify;
+  justify-content: space-between;
+}
+.el-dialog__title {
+  color: rgba(0,0,0,.85);
+  font-weight: 500;
+  word-wrap: break-word;
+}
+.avue-crud__dialog__menu {
+  padding-right: 20px;
+  float: left;
+}
+.avue-crud__dialog__menu i {
+  color: #909399;
+  font-size: 15px;
+}
+.el-icon-full-screen{
+  cursor: pointer;
+}
+.el-icon-full-screen:before {
+  content: "\e719";
+}
+</style>

+ 120 - 10
src/views/basicdata/fees/index.vue

@@ -162,18 +162,37 @@
     />
 
     <!-- 添加或修改费用信息对话框 -->
-    <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
+    <el-dialog
+      v-dialogDrag
+      :fullscreen="dialogFull"
+      :title="title"
+      :visible.sync="open"
+      :close-on-click-modal="false"
+      width="80%"
+      append-to-body>
+      <template slot="title">
+        <div class="avue-crud__dialog__header">
+            <span class="el-dialog__title">
+            <span style="display:inline-block;width:3px;height:20px;margin-right:5px; float: left;margin-top:2px"></span>
+            添加费用信息
+            </span>
+          <div class="avue-crud__dialog__menu enlarge" @click="full">
+            <i  style="cursor: pointer;display: block;width:12px;height:12px;border:1px solid #909399;border-top:3px solid #909399;margin-top: -3px;"></i>
+          </div>
+        </div>
+      </template>
+
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
 
         <el-row>
           <el-col :span="12">
             <el-form-item label="编号" prop="fNo">
-              <el-input v-model="form.fNo" placeholder="请输入编号" />
+              <el-input v-model="form.fNo" placeholder="请输入编号" style="width:80%"/>
             </el-form-item>
           </el-col>
           <el-col :span="12">
             <el-form-item label="名称" prop="fName">
-              <el-input v-model="form.fName" placeholder="请输入名称" />
+              <el-input v-model="form.fName" placeholder="请输入名称" style="width:80%" />
             </el-form-item>
           </el-col>
         </el-row>
@@ -181,7 +200,7 @@
         <el-row>
           <el-col :span="12">
             <el-form-item label="费用属性" prop="fFeetype">
-              <el-select v-model="form.fFeetype" placeholder="请选择费用属性">
+              <el-select v-model="form.fFeetype" placeholder="请选择费用属性" style="width:80%">
                 <el-option
                   v-for="dict in fFeetypeOptions"
                   :key="dict.dictValue"
@@ -192,8 +211,8 @@
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="计量单位" prop="fFeeunitid">
-              <el-select v-model="form.fFeeunitid" placeholder="请选择计量单位">
+            <el-form-item label="计量单位" prop="fFeeunitid" >
+              <el-select v-model="form.fFeeunitid" placeholder="请选择计量单位" style="width:80%">
                 <el-option
                   v-for="dict in fFeeunitidOptions"
                   :key="dict.dictValue"
@@ -208,12 +227,12 @@
         <el-row>
           <el-col :span="12">
             <el-form-item label="币种" prop="fCurrency">
-              <el-input v-model="form.fCurrency" placeholder="请输入币种" />
+              <el-input v-model="form.fCurrency" placeholder="请输入币种" style="width:80%" />
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="状态">
-              <el-select v-model="form.fStatus" placeholder="状态">
+            <el-form-item label="状态" >
+              <el-select v-model="form.fStatus" placeholder="状态" style="width:80%">
                 <el-option
                   v-for="dict in fDocumentOptions"
                   :key="dict.dictValue"
@@ -225,7 +244,7 @@
           </el-col>
           <el-col :span="12">
             <el-form-item label="收付方向">
-              <el-select v-model="form.fDc" placeholder="">
+              <el-select v-model="form.fDc" placeholder="" style="width:80%">
                 <el-option label="收" value="D"/>
                 <el-option label="付" value="C"/>
                 <el-option label="收付" value="DC"/>
@@ -248,13 +267,69 @@
 
 <script>
 import { listFees, getFees, delFees, addFees, updateFees, exportFees } from "../../../api/basicdata/fees";
+import Vue from 'vue'
+Vue.directive('dialogDrag', {
+  bind(el, binding, vnode, oldVnode) {
+    const dialogHeaderEl = el.querySelector('.el-dialog__header')
+    const dragDom = el.querySelector('.el-dialog')
+    const enlarge = el.querySelector('.enlarge')
+    dialogHeaderEl.style.cursor = 'move'
+
+    // 获取原有属性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
+    const sty = dragDom.currentStyle || window.getComputedStyle(dragDom, null)
+    if(enlarge){
+      enlarge.onclick = (e) => {
+        dragDom.style.top = '0px'
+        dragDom.style.left = '0px'
+      }
+    }
+    dialogHeaderEl.onmousedown = (e) => {
+      // 鼠标按下,计算当前元素距离可视区的距离
+      const disX = e.clientX - dialogHeaderEl.offsetLeft
+      const disY = e.clientY - dialogHeaderEl.offsetTop
+
+      // 获取到的值带px 正则匹配替换
+      let styL, styT
+
+      // 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px
+      if (sty.left.includes('%')) {
+        styL = +document.body.clientWidth * (+sty.left.replace(/\%/g, '') / 100)
+        styT = +document.body.clientHeight * (+sty.top.replace(/\%/g, '') / 100)
+      } else {
+        styL = +sty.left.replace(/\px/g, '')
+        styT = +sty.top.replace(/\px/g, '')
+      }
+
+      document.onmousemove = function(e) {
+        // 通过事件委托,计算移动的距离
+        const l = e.clientX - disX
+        const t = e.clientY - disY
 
+        // 移动当前元素
+
+        if ((t + styT) >= 0){
+          dragDom.style.top = `${t + styT}px`
+        }
+        dragDom.style.left = `${l + styL}px`
+        // 将此时的位置传出去
+        // binding.value({x:e.pageX,y:e.pageY})
+      }
+
+      document.onmouseup = function(e) {
+        document.onmousemove = null
+        document.onmouseup = null
+      }
+    }
+  }
+})
 export default {
   name: "Fees",
   components: {
   },
   data() {
     return {
+      //全屏放大
+      dialogFull:false,
       // 遮罩层
       loading: true,
       // 选中数组
@@ -316,6 +391,9 @@ export default {
     });
   },
   methods: {
+    full(){
+      this.dialogFull = !this.dialogFull
+    },
     // 费用属性默认为仓储、计量单位默认为毛重
     query() {
       this.$set(this.form, "fFeetype", "1");
@@ -449,3 +527,35 @@ export default {
   }
 };
 </script>
+<style lang="scss">
+.avue-crud__dialog__header {
+  display: -webkit-box;
+  display: -ms-flexbox;
+  display: flex;
+  -webkit-box-align: center;
+  -ms-flex-align: center;
+  align-items: center;
+  -webkit-box-pack: justify;
+  -ms-flex-pack: justify;
+  justify-content: space-between;
+}
+.el-dialog__title {
+  color: rgba(0,0,0,.85);
+  font-weight: 500;
+  word-wrap: break-word;
+}
+.avue-crud__dialog__menu {
+  padding-right: 20px;
+  float: left;
+}
+.avue-crud__dialog__menu i {
+  color: #909399;
+  font-size: 15px;
+}
+.el-icon-full-screen{
+  cursor: pointer;
+}
+.el-icon-full-screen:before {
+  content: "\e719";
+}
+</style>

+ 112 - 2
src/views/basicdata/goods/index.vue

@@ -147,7 +147,7 @@
       <el-table-column type="index" label="序号" align="center"/>
       <!--<el-table-column label="存储id" align="center" prop="fTypeid" />--><!-- 后期添加 -->
       <el-table-column label="编号" align="center" prop="fNo" :show-overflow-tooltip="true" />
-      <el-table-column label="名称" align="center" prop="fName" :show-overflow-tooltip="true" />
+      <el-table-column label="名称" align="center" prop="fName" width="120" :show-overflow-tooltip="true" />
       <el-table-column label="英文名称" align="center" prop="fEnam" :show-overflow-tooltip="true" />
       <el-table-column label="商品类别" align="center" prop="fTypeid" :show-overflow-tooltip="true" :formatter="fTypeidFormat"/>
       <el-table-column label="规格" align="center" prop="fSpecs" :show-overflow-tooltip="true" />
@@ -195,7 +195,25 @@
     />
 
     <!-- 添加或修改商品详情对话框 -->
-    <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
+    <el-dialog
+      v-dialogDrag
+      :fullscreen="dialogFull"
+      width="80%" :title="title"
+      :visible.sync="open"
+      :close-on-click-modal="false"
+      append-to-body>
+      <template slot="title">
+        <div class="avue-crud__dialog__header">
+            <span class="el-dialog__title">
+            <span style="display:inline-block;width:3px;height:20px;margin-right:5px; float: left;margin-top:2px"></span>
+            添加商品详情
+            </span>
+          <div class="avue-crud__dialog__menu enlarge" @click="full">
+            <i  style="cursor: pointer;display: block;width:12px;height:12px;border:1px solid #909399;border-top:3px solid #909399;margin-top: -3px;"></i>
+          </div>
+        </div>
+      </template>
+
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
         <!--<el-form-item label="存储id" prop="fTypeid">
           <el-input v-model="form.fTypeid" placeholder="请输入存储id" />
@@ -295,6 +313,61 @@
 
 <script>
   import { listGoods, getGoods, delGoods, addGoods, updateGoods,changeGoodsStatus, exportGoods } from "@/api/basicdata/goods";
+  import Vue from 'vue'
+  Vue.directive('dialogDrag', {
+    bind(el, binding, vnode, oldVnode) {
+      const dialogHeaderEl = el.querySelector('.el-dialog__header')
+      const dragDom = el.querySelector('.el-dialog')
+      const enlarge = el.querySelector('.enlarge')
+      dialogHeaderEl.style.cursor = 'move'
+
+      // 获取原有属性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
+      const sty = dragDom.currentStyle || window.getComputedStyle(dragDom, null)
+      if(enlarge){
+        enlarge.onclick = (e) => {
+          dragDom.style.top = '0px'
+          dragDom.style.left = '0px'
+        }
+      }
+      dialogHeaderEl.onmousedown = (e) => {
+        // 鼠标按下,计算当前元素距离可视区的距离
+        const disX = e.clientX - dialogHeaderEl.offsetLeft
+        const disY = e.clientY - dialogHeaderEl.offsetTop
+
+        // 获取到的值带px 正则匹配替换
+        let styL, styT
+
+        // 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px
+        if (sty.left.includes('%')) {
+          styL = +document.body.clientWidth * (+sty.left.replace(/\%/g, '') / 100)
+          styT = +document.body.clientHeight * (+sty.top.replace(/\%/g, '') / 100)
+        } else {
+          styL = +sty.left.replace(/\px/g, '')
+          styT = +sty.top.replace(/\px/g, '')
+        }
+
+        document.onmousemove = function(e) {
+          // 通过事件委托,计算移动的距离
+          const l = e.clientX - disX
+          const t = e.clientY - disY
+
+          // 移动当前元素
+
+          if ((t + styT) >= 0){
+            dragDom.style.top = `${t + styT}px`
+          }
+          dragDom.style.left = `${l + styL}px`
+          // 将此时的位置传出去
+          // binding.value({x:e.pageX,y:e.pageY})
+        }
+
+        document.onmouseup = function(e) {
+          document.onmousemove = null
+          document.onmouseup = null
+        }
+      }
+    }
+  })
 
   export default {
     name: "Goods",
@@ -302,6 +375,8 @@
     },
     data() {
       return {
+        //全屏放大
+        dialogFull:false,
         // 遮罩层
         loading: true,
         // 选中数组
@@ -378,6 +453,9 @@
       });
     },
     methods: {
+      full(){
+        this.dialogFull = !this.dialogFull
+      },
       /** 查询商品详情列表 */
       getList() {
         this.loading = true;
@@ -524,3 +602,35 @@
     }
   };
 </script>
+<style lang="scss">
+.avue-crud__dialog__header {
+  display: -webkit-box;
+  display: -ms-flexbox;
+  display: flex;
+  -webkit-box-align: center;
+  -ms-flex-align: center;
+  align-items: center;
+  -webkit-box-pack: justify;
+  -ms-flex-pack: justify;
+  justify-content: space-between;
+}
+.el-dialog__title {
+  color: rgba(0,0,0,.85);
+  font-weight: 500;
+  word-wrap: break-word;
+}
+.avue-crud__dialog__menu {
+  padding-right: 20px;
+  float: left;
+}
+.avue-crud__dialog__menu i {
+  color: #909399;
+  font-size: 15px;
+}
+.el-icon-full-screen{
+  cursor: pointer;
+}
+.el-icon-full-screen:before {
+  content: "\e719";
+}
+</style>

+ 112 - 1
src/views/basicdata/info/index.vue

@@ -153,7 +153,25 @@
     />
 
     <!-- 添加或修改参数配置对话框 -->
-    <el-dialog :title="title" :visible.sync="open" close-on-click-modal="false" width="500px" append-to-body>
+    <el-dialog
+      v-dialogDrag
+      :fullscreen="dialogFull"
+      :title="title"
+      :visible.sync="open"
+      close-on-click-modal="false"
+      width="500px" append-to-body>
+      <template slot="title">
+        <div class="avue-crud__dialog__header">
+            <span class="el-dialog__title">
+            <span style="display:inline-block;width:3px;height:20px;margin-right:5px; float: left;margin-top:2px"></span>
+            添加字典类型
+            </span>
+          <div class="avue-crud__dialog__menu enlarge" @click="full">
+            <i  style="cursor: pointer;display: block;width:12px;height:12px;border:1px solid #909399;border-top:3px solid #909399;margin-top: -3px;"></i>
+          </div>
+        </div>
+      </template>
+
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
         <el-form-item label="字典名称" prop="dictName">
           <el-input v-model="form.dictName" placeholder="请输入字典名称" />
@@ -184,11 +202,68 @@
 
 <script>
 import { listType, getType, delType, addType, updateType, exportType, clearCache } from "@/api/system/dict/type";
+import Vue from 'vue'
+Vue.directive('dialogDrag', {
+  bind(el, binding, vnode, oldVnode) {
+    const dialogHeaderEl = el.querySelector('.el-dialog__header')
+    const dragDom = el.querySelector('.el-dialog')
+    const enlarge = el.querySelector('.enlarge')
+    dialogHeaderEl.style.cursor = 'move'
+
+    // 获取原有属性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
+    const sty = dragDom.currentStyle || window.getComputedStyle(dragDom, null)
+    if(enlarge){
+      enlarge.onclick = (e) => {
+        dragDom.style.top = '0px'
+        dragDom.style.left = '0px'
+      }
+    }
+    dialogHeaderEl.onmousedown = (e) => {
+      // 鼠标按下,计算当前元素距离可视区的距离
+      const disX = e.clientX - dialogHeaderEl.offsetLeft
+      const disY = e.clientY - dialogHeaderEl.offsetTop
+
+      // 获取到的值带px 正则匹配替换
+      let styL, styT
+
+      // 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px
+      if (sty.left.includes('%')) {
+        styL = +document.body.clientWidth * (+sty.left.replace(/\%/g, '') / 100)
+        styT = +document.body.clientHeight * (+sty.top.replace(/\%/g, '') / 100)
+      } else {
+        styL = +sty.left.replace(/\px/g, '')
+        styT = +sty.top.replace(/\px/g, '')
+      }
+
+      document.onmousemove = function(e) {
+        // 通过事件委托,计算移动的距离
+        const l = e.clientX - disX
+        const t = e.clientY - disY
+
+        // 移动当前元素
+
+        if ((t + styT) >= 0){
+          dragDom.style.top = `${t + styT}px`
+        }
+        dragDom.style.left = `${l + styL}px`
+        // 将此时的位置传出去
+        // binding.value({x:e.pageX,y:e.pageY})
+      }
+
+      document.onmouseup = function(e) {
+        document.onmousemove = null
+        document.onmouseup = null
+      }
+    }
+  }
+})
 
 export default {
   name: "Dict",
   data() {
     return {
+      //全屏放大
+      dialogFull:false,
       // 遮罩层
       loading: true,
       // 选中数组
@@ -242,6 +317,10 @@ export default {
     });
   },
   methods: {
+    //全屏放大
+    full(){
+      this.dialogFull = !this.dialogFull
+    },
     /** 查询字典类型列表 */
     getList() {
       this.loading = true;
@@ -363,3 +442,35 @@ export default {
   }
 };
 </script>
+<style lang="scss">
+.avue-crud__dialog__header {
+  display: -webkit-box;
+  display: -ms-flexbox;
+  display: flex;
+  -webkit-box-align: center;
+  -ms-flex-align: center;
+  align-items: center;
+  -webkit-box-pack: justify;
+  -ms-flex-pack: justify;
+  justify-content: space-between;
+}
+.el-dialog__title {
+  color: rgba(0,0,0,.85);
+  font-weight: 500;
+  word-wrap: break-word;
+}
+.avue-crud__dialog__menu {
+  padding-right: 20px;
+  float: left;
+}
+.avue-crud__dialog__menu i {
+  color: #909399;
+  font-size: 15px;
+}
+.el-icon-full-screen{
+  cursor: pointer;
+}
+.el-icon-full-screen:before {
+  content: "\e719";
+}
+</style>

+ 109 - 1
src/views/basicdata/warehouse/index.vue

@@ -173,7 +173,26 @@
 
 
     <!-- 添加或修改仓库对话框 -->
-    <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="60%" append-to-body>
+    <el-dialog
+      v-dialogDrag
+      :fullscreen="dialogFull"
+      :title="title"
+      :visible.sync="open"
+      :close-on-click-modal="false"
+      width="60%"
+      append-to-body>
+      <template slot="title">
+        <div class="avue-crud__dialog__header">
+            <span class="el-dialog__title">
+            <span style="display:inline-block;width:3px;height:20px;margin-right:5px; float: left;margin-top:2px"></span>
+            添加仓库
+            </span>
+          <div class="avue-crud__dialog__menu enlarge" @click="full">
+            <i  style="cursor: pointer;display: block;width:12px;height:12px;border:1px solid #909399;border-top:3px solid #909399;margin-top: -3px;"></i>
+          </div>
+        </div>
+      </template>
+
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
         <el-row>
           <el-col :span="12">
@@ -236,6 +255,61 @@ import { listWarehouse, getWarehouse, delWarehouse, addWarehouse,changeWareStatu
 import Treeselect from "@riophae/vue-treeselect";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
 import {addUser, updateUser} from "@/api/system/user";
+import Vue from 'vue'
+Vue.directive('dialogDrag', {
+  bind(el, binding, vnode, oldVnode) {
+    const dialogHeaderEl = el.querySelector('.el-dialog__header')
+    const dragDom = el.querySelector('.el-dialog')
+    const enlarge = el.querySelector('.enlarge')
+    dialogHeaderEl.style.cursor = 'move'
+
+    // 获取原有属性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
+    const sty = dragDom.currentStyle || window.getComputedStyle(dragDom, null)
+    if(enlarge){
+      enlarge.onclick = (e) => {
+        dragDom.style.top = '0px'
+        dragDom.style.left = '0px'
+      }
+    }
+    dialogHeaderEl.onmousedown = (e) => {
+      // 鼠标按下,计算当前元素距离可视区的距离
+      const disX = e.clientX - dialogHeaderEl.offsetLeft
+      const disY = e.clientY - dialogHeaderEl.offsetTop
+
+      // 获取到的值带px 正则匹配替换
+      let styL, styT
+
+      // 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px
+      if (sty.left.includes('%')) {
+        styL = +document.body.clientWidth * (+sty.left.replace(/\%/g, '') / 100)
+        styT = +document.body.clientHeight * (+sty.top.replace(/\%/g, '') / 100)
+      } else {
+        styL = +sty.left.replace(/\px/g, '')
+        styT = +sty.top.replace(/\px/g, '')
+      }
+
+      document.onmousemove = function(e) {
+        // 通过事件委托,计算移动的距离
+        const l = e.clientX - disX
+        const t = e.clientY - disY
+
+        // 移动当前元素
+
+        if ((t + styT) >= 0){
+          dragDom.style.top = `${t + styT}px`
+        }
+        dragDom.style.left = `${l + styL}px`
+        // 将此时的位置传出去
+        // binding.value({x:e.pageX,y:e.pageY})
+      }
+
+      document.onmouseup = function(e) {
+        document.onmousemove = null
+        document.onmouseup = null
+      }
+    }
+  }
+})
 
 export default {
   name: "Warehouse",
@@ -244,6 +318,8 @@ export default {
   },
   data() {
     return {
+      //全屏放大
+      dialogFull:false,
       fName:null,
       defaultProps: {
         children: "children",
@@ -497,3 +573,35 @@ export default {
   }
 };
 </script>
+<style lang="scss">
+.avue-crud__dialog__header {
+  display: -webkit-box;
+  display: -ms-flexbox;
+  display: flex;
+  -webkit-box-align: center;
+  -ms-flex-align: center;
+  align-items: center;
+  -webkit-box-pack: justify;
+  -ms-flex-pack: justify;
+  justify-content: space-between;
+}
+.el-dialog__title {
+  color: rgba(0,0,0,.85);
+  font-weight: 500;
+  word-wrap: break-word;
+}
+.avue-crud__dialog__menu {
+  padding-right: 20px;
+  float: left;
+}
+.avue-crud__dialog__menu i {
+  color: #909399;
+  font-size: 15px;
+}
+.el-icon-full-screen{
+  cursor: pointer;
+}
+.el-icon-full-screen:before {
+  content: "\e719";
+}
+</style>

+ 1 - 1
src/views/finance/charge/index.vue

@@ -301,7 +301,7 @@
             添加财务数据主
             </span>
           <div class="avue-crud__dialog__menu enlarge" @click="full">
-            <i class="el-icon-full-screen"></i>
+            <i  style="cursor: pointer;display: block;width:12px;height:12px;border:1px solid #909399;border-top:3px solid #909399;margin-top: -3px;"></i>
           </div>
         </div>
       </template>

+ 3 - 3
src/views/finance/contrast/index.vue

@@ -302,7 +302,7 @@
             <span style="display:inline-block;width:3px;height:20px;margin-right:5px; float: left;margin-top:2px"></span>
             </span>
           <div class="avue-crud__dialog__menu enlarge" @click="full">
-            <i class="el-icon-full-screen"></i>
+            <i  style="cursor: pointer;display: block;width:12px;height:12px;border:1px solid #909399;border-top:3px solid #909399;margin-top: -3px;"></i>
           </div>
         </div>
       </template>
@@ -495,7 +495,7 @@
             <span style="display:inline-block; width:3px;height:20px;margin-right:5px; float: left;margin-top:2px"></span>
             </span>
             <div class="avue-crud__dialog__menu enlarge" @click="full">
-              <i class="el-icon-full-screen"></i>
+              <i  style="cursor: pointer;display: block;width:12px;height:12px;border:1px solid #909399;border-top:3px solid #909399;margin-top: -3px;"></i>
             </div>
           </div>
         </template>
@@ -539,7 +539,7 @@
               filterable
               remote
               clearable
-              style="width: 300px"
+              style="width: 200px"
               size="small"
               @keyup.enter.native="handleQuery"
               :remote-method="corpsRemoteMethod"

+ 119 - 2
src/views/finance/payment/index.vue

@@ -210,10 +210,23 @@
     />
 
     <!-- 添加或修改财务数据主对话框 -->
-    <el-dialog :close-on-click-modal="false" :title="title" :show-close="Xbutton" :visible.sync="open" width="70%" append-to-body>
+    <el-dialog v-dialogDrag :fullscreen="dialogFull" :close-on-click-modal="false" :title="title" :show-close="Xbutton" :visible.sync="open" width="70%" append-to-body>
+      <template slot="title">
+        <div class="avue-crud__dialog__header">
+            <span class="el-dialog__title">
+            <span style="display:inline-block; width:3px;height:20px;margin-right:5px; float: left;margin-top:2px"></span>
+            添加财务数据主
+            </span>
+          <div class="avue-crud__dialog__menu enlarge" @click="full">
+            <i  style="cursor: pointer;display: block;width:12px;height:12px;border:1px solid #909399;border-top:3px solid #909399;margin-top: -3px;"></i>
+          </div>
+        </div>
+      </template>
+
       <el-form :model="queryParams" :rules="ruless" ref="ruless" :inline="true" v-show="showSearch"
                label-width="68px"
       >
+
         <el-form-item label="货权方" prop="fCtrlcorpid">
           <el-input
             v-model="queryParams.fCtrlcorpid"
@@ -388,7 +401,19 @@
         <el-button v-if="cancelButton === true" @click="cancel">取 消</el-button>
         <el-button v-if="cancelButton === false" @click="homePage">取 消</el-button>
       </div>
-      <el-dialog :close-on-click-modal="false" width="70%" :visible.sync="innerVisible" title="导入数据" append-to-body>
+      <el-dialog v-dialogDrag :fullscreen="dialogFull" :close-on-click-modal="false" width="70%" :visible.sync="innerVisible" title="导入数据" append-to-body>
+        <template slot="title">
+          <div class="avue-crud__dialog__header">
+            <span class="el-dialog__title">
+            <span style="display:inline-block;width:3px;height:20px;margin-right:5px; float: left;margin-top:2px"></span>
+            导入数据
+            </span>
+            <div class="avue-crud__dialog__menu enlarge" @click="full">
+              <i  style="cursor: pointer;display: block;width:12px;height:12px;border:1px solid #909399;border-top:3px solid #909399;margin-top: -3px;"></i>
+            </div>
+          </div>
+        </template>
+
         <el-form ref="form" :model="queryParameter" :rules="rules" label-width="80px"
                  style="display: flex;flex-wrap: wrap;"
         >
@@ -634,11 +659,68 @@ import AddOrUpdate from '@/views/viewApproval'
 import ApprovalComments from '@/views/startApproval'
 import { queryUserVal } from '@/api/warehouseBusiness/agreement'
 import Global from '@/layout/components/global'
+import Vue from 'vue'
+Vue.directive('dialogDrag', {
+  bind(el, binding, vnode, oldVnode) {
+    const dialogHeaderEl = el.querySelector('.el-dialog__header')
+    const dragDom = el.querySelector('.el-dialog')
+    const enlarge = el.querySelector('.enlarge')
+    dialogHeaderEl.style.cursor = 'move'
+
+    // 获取原有属性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
+    const sty = dragDom.currentStyle || window.getComputedStyle(dragDom, null)
+    if(enlarge){
+      enlarge.onclick = (e) => {
+        dragDom.style.top = '0px'
+        dragDom.style.left = '0px'
+      }
+    }
+    dialogHeaderEl.onmousedown = (e) => {
+      // 鼠标按下,计算当前元素距离可视区的距离
+      const disX = e.clientX - dialogHeaderEl.offsetLeft
+      const disY = e.clientY - dialogHeaderEl.offsetTop
+
+      // 获取到的值带px 正则匹配替换
+      let styL, styT
+
+      // 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px
+      if (sty.left.includes('%')) {
+        styL = +document.body.clientWidth * (+sty.left.replace(/\%/g, '') / 100)
+        styT = +document.body.clientHeight * (+sty.top.replace(/\%/g, '') / 100)
+      } else {
+        styL = +sty.left.replace(/\px/g, '')
+        styT = +sty.top.replace(/\px/g, '')
+      }
+
+      document.onmousemove = function(e) {
+        // 通过事件委托,计算移动的距离
+        const l = e.clientX - disX
+        const t = e.clientY - disY
+
+        // 移动当前元素
+
+        if ((t + styT) >= 0){
+          dragDom.style.top = `${t + styT}px`
+        }
+        dragDom.style.left = `${l + styL}px`
+        // 将此时的位置传出去
+        // binding.value({x:e.pageX,y:e.pageY})
+      }
+
+      document.onmouseup = function(e) {
+        document.onmousemove = null
+        document.onmouseup = null
+      }
+    }
+  }
+})
 
 export default {
   name: 'Charge',
   data() {
     return {
+      //全屏放大
+      dialogFull:false,
       //财务结算方式
       methodOptions:[],
       doNot:false,
@@ -801,6 +883,9 @@ export default {
     this.adoPt()
   },
   methods: {
+    full(){
+      this.dialogFull = !this.dialogFull
+    },
     //财务主取消
     signOut(){
       if(this.increase_s == 0){
@@ -1531,3 +1616,35 @@ export default {
   }
 }
 </script>
+<style lang="scss">
+.avue-crud__dialog__header {
+  display: -webkit-box;
+  display: -ms-flexbox;
+  display: flex;
+  -webkit-box-align: center;
+  -ms-flex-align: center;
+  align-items: center;
+  -webkit-box-pack: justify;
+  -ms-flex-pack: justify;
+  justify-content: space-between;
+}
+.el-dialog__title {
+  color: rgba(0,0,0,.85);
+  font-weight: 500;
+  word-wrap: break-word;
+}
+.avue-crud__dialog__menu {
+  padding-right: 20px;
+  float: left;
+}
+.avue-crud__dialog__menu i {
+  color: #909399;
+  font-size: 15px;
+}
+.el-icon-full-screen{
+  cursor: pointer;
+}
+.el-icon-full-screen:before {
+  content: "\e719";
+}
+</style>

+ 111 - 2
src/views/warehouseBusiness/agreement/index.vue

@@ -212,9 +212,27 @@
       @pagination="getList"
     />
     <!-- 添加或修改仓储费对话框 -->
-    <el-dialog :title="title" :visible.sync="open" width="65%" append-to-body :show-close="colseButton"
-               :close-on-click-modal="false"
+    <el-dialog
+      v-dialogDrag
+      :fullscreen="dialogFull"
+      :title="title"
+      :visible.sync="open" width="65%"
+      append-to-body
+      :show-close="colseButton"
+      :close-on-click-modal="false"
     >
+      <template slot="title">
+        <div class="avue-crud__dialog__header">
+            <span class="el-dialog__title">
+            <span style="display:inline-block;width:3px;height:20px;margin-right:5px; float: left;margin-top:2px"></span>
+              添加仓储费
+            </span>
+          <div class="avue-crud__dialog__menu enlarge" @click="full">
+            <i  style="cursor: pointer;display: block;width:12px;height:12px;border:1px solid #909399;border-top:3px solid #909399;margin-top: -3px;"></i>
+          </div>
+        </div>
+      </template>
+
       <el-form ref="form" :model="form" :rules="rules" label-width="80px"
                style="display: flex;flex-wrap: wrap;"
       >
@@ -445,7 +463,62 @@ import { changeUserStatus } from '@/api/system/user'
 import AddOrUpdate from '@/views/viewApproval'
 import ApprovalComments from '@/views/startApproval'
 import Global from '@/layout/components/global'
+import Vue from 'vue'
 // import { listUser, queryUserVal } from '@/api/system/user'
+Vue.directive('dialogDrag', {
+  bind(el, binding, vnode, oldVnode) {
+    const dialogHeaderEl = el.querySelector('.el-dialog__header')
+    const dragDom = el.querySelector('.el-dialog')
+    const enlarge = el.querySelector('.enlarge')
+    dialogHeaderEl.style.cursor = 'move'
+
+    // 获取原有属性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
+    const sty = dragDom.currentStyle || window.getComputedStyle(dragDom, null)
+    if(enlarge){
+      enlarge.onclick = (e) => {
+        dragDom.style.top = '0px'
+        dragDom.style.left = '0px'
+      }
+    }
+    dialogHeaderEl.onmousedown = (e) => {
+      // 鼠标按下,计算当前元素距离可视区的距离
+      const disX = e.clientX - dialogHeaderEl.offsetLeft
+      const disY = e.clientY - dialogHeaderEl.offsetTop
+
+      // 获取到的值带px 正则匹配替换
+      let styL, styT
+
+      // 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px
+      if (sty.left.includes('%')) {
+        styL = +document.body.clientWidth * (+sty.left.replace(/\%/g, '') / 100)
+        styT = +document.body.clientHeight * (+sty.top.replace(/\%/g, '') / 100)
+      } else {
+        styL = +sty.left.replace(/\px/g, '')
+        styT = +sty.top.replace(/\px/g, '')
+      }
+
+      document.onmousemove = function(e) {
+        // 通过事件委托,计算移动的距离
+        const l = e.clientX - disX
+        const t = e.clientY - disY
+
+        // 移动当前元素
+
+        if ((t + styT) >= 0){
+          dragDom.style.top = `${t + styT}px`
+        }
+        dragDom.style.left = `${l + styL}px`
+        // 将此时的位置传出去
+        // binding.value({x:e.pageX,y:e.pageY})
+      }
+
+      document.onmouseup = function(e) {
+        document.onmousemove = null
+        document.onmouseup = null
+      }
+    }
+  }
+})
 
 export default {
   name: 'Agreement',
@@ -455,6 +528,7 @@ export default {
   },
   data() {
     return {
+      dialogFull:false,
       addOrEdid:1,
       idCopy:'',
       colseButton:true,
@@ -576,6 +650,9 @@ export default {
     this.Jump()
   },
   methods: {
+    full(){
+      this.dialogFull = !this.dialogFull
+    },
     //复制新增按钮
     handleCopy(){
       getAgreement().then(response => {
@@ -1110,3 +1187,35 @@ export default {
   }
 }
 </script>
+<style lang="scss">
+.avue-crud__dialog__header {
+  display: -webkit-box;
+  display: -ms-flexbox;
+  display: flex;
+  -webkit-box-align: center;
+  -ms-flex-align: center;
+  align-items: center;
+  -webkit-box-pack: justify;
+  -ms-flex-pack: justify;
+  justify-content: space-between;
+}
+.el-dialog__title {
+  color: rgba(0,0,0,.85);
+  font-weight: 500;
+  word-wrap: break-word;
+}
+.avue-crud__dialog__menu {
+  padding-right: 20px;
+  float: left;
+}
+.avue-crud__dialog__menu i {
+  color: #909399;
+  font-size: 15px;
+}
+.el-icon-full-screen{
+  cursor: pointer;
+}
+.el-icon-full-screen:before {
+  content: "\e719";
+}
+</style>

+ 4 - 12
src/views/warehouseBusiness/inStock/index.vue

@@ -4333,15 +4333,6 @@ export default {
         }
         this.editDialogVisible_sss = true
         this.fBstime = this.form.fBstime
-        // if(!this.dataListSelection[0].fSerialNumber){
-        //   serialNumber().then(response =>{
-        //     console.log(response)
-        //     console.log(this.dataListSelection[0])
-        //     this.fSerialNumber = response.data.fSerialNumber
-        //   })
-        // }else{
-        //   this.fSerialNumber = this.dataListSelection[0].fSerialNumber
-        // }
         for(let item in this.businessTypeOption){
           if(this.form.fBusinessType == this.businessTypeOption[item].dictValue){
             this.businessType = this.businessTypeOption[item].dictLabel
@@ -4437,6 +4428,7 @@ export default {
     },
    //刷新查询仓库主(出入库)列表
     getList() {
+
       //获取劳务公司
       let queryParams = { pageNum: 1, fTypeid: 6}
       listCorps(queryParams).then((response) => {
@@ -4488,7 +4480,6 @@ export default {
         }
       }
       operationAgreement(data).then( response => {
-        console.log(response)
         this.tasklegList = response.rows;
         for (let li in this.tasklegList) {
           this.$set(
@@ -4588,7 +4579,6 @@ export default {
           // qty=(qty/1000).toFixed(2);
           let fAmount = parseFloat(Number(this.dialogWhgenlegList[zhgen].fPrice) * Number(qty)).toFixed(2)
           if(this.key_id == 3){
-            console.log(this.tasklegList)
             this.warehouseDrList.push({
               fQty: qty,
               fCorpid: this.dialogWhgenlegList[zhgen].fCorpid,
@@ -4812,6 +4802,8 @@ export default {
     },
     /** 新增按钮操作 */
     handleAdd(status) {
+      this.before = ''
+      this.current = ''
       let queryParams = {pageNum: 1,};
       listFees(queryParams).then((response) => {
         this.fDNameOptions = response.rows;
@@ -4823,7 +4815,7 @@ export default {
         fFeetunit:"2",
         fBstime: new Date()
       }
-      this.browseStatus = status;
+      this.browseStatus = false;
       this.queryUser();
       this.goodsRemoteMethod()
       this.warehousesssMethod()

+ 2 - 1
src/views/warehouseBusiness/outStock/index.vue

@@ -4700,7 +4700,8 @@ export default {
     },
     /** 新增按钮操作 */
     handleAdd(status) {
-
+      this.before = ''
+      this.current = ''
       this.reset();
       this.browseStatus = status;
       this.queryUser();

+ 2 - 0
src/views/warehouseBusiness/stockTransfer/index.vue

@@ -4490,6 +4490,8 @@ export default {
     },
     /** 新增按钮操作 */
     handleAdd(status) {
+      this.Operator = '',
+      this.Lander = ''
       this.warehousesssMethod()
       this.reset();
       this.browseStatus = status;

+ 42 - 0
src/views/warehouseBusiness/storageFeeCalculation/index.vue

@@ -360,12 +360,24 @@
     />
     <!-- 新增或修改仓储费计算对话框 -->
     <el-dialog
+      v-dialogDrag
+      :fullscreen="dialogFull"
       :visible.sync="open"
       :close-on-click-modal="false"
       width="80%"
       append-to-body
       :show-close="Xbutton"
     >
+      <template slot="title">
+        <div class="avue-crud__dialog__header">
+            <span class="el-dialog__title">
+            <span style="display:inline-block;width:3px;height:20px;margin-right:5px; float: left;margin-top:2px"></span>
+            </span>
+          <div class="avue-crud__dialog__menu enlarge" @click="full">
+            <i  style="cursor: pointer;display: block;width:12px;height:12px;border:1px solid #909399;border-top:3px solid #909399;margin-top: -3px;"></i>
+          </div>
+        </div>
+      </template>
       <el-form ref="form" :model="form" :rules="rules" label-width="120px">
         <el-row>
           <el-col :span="8">
@@ -2088,4 +2100,34 @@
   .el-form-item__label {
     font-size: 12px !important;
   }
+  .avue-crud__dialog__header {
+    display: -webkit-box;
+    display: -ms-flexbox;
+    display: flex;
+    -webkit-box-align: center;
+    -ms-flex-align: center;
+    align-items: center;
+    -webkit-box-pack: justify;
+    -ms-flex-pack: justify;
+    justify-content: space-between;
+  }
+  .el-dialog__title {
+    color: rgba(0,0,0,.85);
+    font-weight: 500;
+    word-wrap: break-word;
+  }
+  .avue-crud__dialog__menu {
+    padding-right: 20px;
+    float: left;
+  }
+  .avue-crud__dialog__menu i {
+    color: #909399;
+    font-size: 15px;
+  }
+  .el-icon-full-screen{
+    cursor: pointer;
+  }
+  .el-icon-full-screen:before {
+    content: "\e719";
+  }
 </style>