Jelajahi Sumber

前端结算添加打印额外单据

gjy 2 tahun lalu
induk
melakukan
ee330c4caf

+ 6 - 5
src/views/houseSelfCollect/paymentManagement.vue

@@ -376,8 +376,8 @@
         <el-button type="primary" @click="invoicingconfirm">确 定</el-button>
       </span>
     </el-dialog>
-    <div class="mask1" v-show="isShowPrintType1"></div>
-    <div class="print-type1" v-show="isShowPrintType1">
+    <div class="mask1" v-show="isShowPrintTypeBills"></div>
+    <div class="print-type1" v-show="isShowPrintTypeBills">
       <div class="print-type-content">
         <div class="print-type-title">请选择打印纸张类型</div>
         <div class="print-type-checkbox">
@@ -512,7 +512,7 @@
         },
         row: {},
         isShowPrintType: false,
-        isShowPrintType1:false,
+        isShowPrintTypeBills:false,
         customerList: {
           customerName: '',
           customerNumberCard: '',
@@ -878,7 +878,7 @@
       },
       typePrintCannelClick1() {
         this.dialogDataList = [] //打个打印取消时数组至空
-        this.isShowPrintType1= false
+        this.isShowPrintTypeBills= false
       },
       goodsNameChange(e) {
         if(e.indexOf('全部货名')!=-1){
@@ -1641,9 +1641,10 @@
       },
       printExtra(){
         this.isShowPrint=false
-        this.isShowPrintType1=true
+        this.isShowPrintTypeBills=true
       },
       printBig() {
+        localStorage.setItem('print_alone_extra',false)
         let _list1 = []
         let _list2 = []
         if (this.printType == 1) {

+ 434 - 27
src/views/houseSelfCollect/settlement.vue

@@ -276,8 +276,59 @@
         <el-button type="primary" @click="closePrint">关闭</el-button>
         <!-- <el-button type="primary" @click="printSmall">打印小票</el-button> -->
         <el-button type="primary" @click="printBig">打印单据</el-button>
+        <el-button type="primary" @click="printExtra">打印额外单据</el-button>
       </div>
     </el-dialog>
+    <div class="mask1" v-show="isShowPrintType1"></div>
+    <div class="print-type1" v-show="isShowPrintType1">
+      <div class="print-type-content1">
+        <div class="print-type-title1">请选择打印纸张类型</div>
+        <div class="print-type-checkbox">
+          <!-- <el-radio-group v-model="radio">
+            <el-radio label="A4" class="label-width" @change="selectType">A4</el-radio>
+            <el-radio label="A5" class="label-width" @change="selectType">A5</el-radio>
+          </el-radio-group> -->
+        </div>
+
+        <div class="shdw-style1" v-if="checked||(!ddchecked&&!checked)">
+          <div>收货单位:</div>
+          <!-- <div>{{companyName}}</div> -->
+          <el-select v-model="companyName" placeholder="请选择" style="width: 75%;">
+            <el-option v-for="item in companyNameOptions" :key="item.value" :label="item.label" :value="item.value">
+            </el-option>
+          </el-select>
+        </div>
+        <div v-if="paymentList.warehouseName=='鲅鱼圈金信库'||paymentList.warehouseName=='白城内陆港'||paymentList.warehouseName=='杜尔伯特家禾库'||paymentList.warehouseName=='洮南新友谊兴旺库'||paymentList.warehouseName=='甘南宏旗库'||paymentList.warehouseName=='哈尔滨依兰库'||paymentList.warehouseName=='山东园丰库'">
+          <div class="print-type-ew">
+            <el-checkbox v-model="checked" @change="changeEw">打印额外票据</el-checkbox>
+            <el-checkbox v-model="ddchecked" @change="changeEwDD">单独打印额外票据</el-checkbox>
+          </div>
+          <div class="ew-print" v-if="printSeparately">
+            <div class="row">
+              <div>额外客户姓名:</div>
+              <!-- <div>{{companyName}}</div> -->
+              <el-select v-model="ewCustomer" placeholder="请选择" style="width: 75%;">
+                <el-option v-for="item in ewCustomerOptions" :key="item.value" :label="item.label" :value="item.value">
+                </el-option>
+              </el-select>
+            </div>
+            <div class="row">
+              <div>额外收货单位:</div>
+              <!-- <div>{{companyNameEW}}</div> -->
+              <el-select v-model="companyNameEW" placeholder="请选择" style="width: 75%;">
+                <el-option v-for="item in companyNameEWOptions" :key="item.value" :label="item.label"
+                  :value="item.value">
+                </el-option>
+              </el-select>
+            </div>
+          </div>
+        </div>
+      </div>
+      <div class="bottom-btn">
+        <el-button @click="printBig1">确定</el-button>
+        <el-button @click="typePrintCannelClick1">取消</el-button>
+      </div>
+    </div>
   </div>
 </template>
 <script>
@@ -312,6 +363,84 @@
         information: '结算',
         printData: {},
         imgUrl: '',
+        ddchecked: false,
+        checked: false,
+        ewCustomerOptions: [{
+          value: '天津建源供应链管理有限公司',
+          label: '天津建源供应链管理有限公司'
+        },{
+          value: '黑龙江中天昊元贸易有限公司',
+          label: '黑龙江中天昊元贸易有限公司'
+        }, {
+          value: '黑龙江利润元粮食贸易有限公司',
+          label: '黑龙江利润元粮食贸易有限公司'
+        }, {
+          value: '黑龙江众利合粮食贸易有限公司',
+          label: '黑龙江众利合粮食贸易有限公司'
+        }, {
+          value: '黑龙江鑫满仓粮食贸易有限公司',
+          label: '黑龙江鑫满仓粮食贸易有限公司'
+        },{
+          value: '厦门建发物产有限公司',
+          label: '厦门建发物产有限公司'
+        },{
+          value: '黑龙江谷香粮食贸易有限公司',
+          label: '黑龙江谷香粮食贸易有限公司'
+        },{
+          value: '黑龙江秋收有限公司',
+          label: '黑龙江秋收有限公司'
+        }, {
+          value: '黑龙江欣洋粮食贸易有限公司',
+          label: '黑龙江欣洋粮食贸易有限公司'
+        }, {
+          value: '黑龙江益储益运粮食贸易有限公司',
+          label: '黑龙江益储益运粮食贸易有限公司'
+        }, {
+          value: '黑龙江启兴粮食贸易有限公司',
+          label: '黑龙江启兴粮食贸易有限公司'
+        }],
+        companyNameOptions: [{
+          value: '黑龙江中天昊元贸易有限公司',
+          label: '黑龙江中天昊元贸易有限公司'
+        }, {
+          value: '黑龙江利润元粮食贸易有限公司',
+          label: '黑龙江利润元粮食贸易有限公司'
+        }, {
+          value: '黑龙江众利合粮食贸易有限公司',
+          label: '黑龙江众利合粮食贸易有限公司'
+        }, {
+          value: '黑龙江鑫满仓粮食贸易有限公司',
+          label: '黑龙江鑫满仓粮食贸易有限公司'
+        },{
+          value: '黑龙江谷香粮食贸易有限公司',
+          label: '黑龙江谷香粮食贸易有限公司'
+        },{
+          value: '黑龙江秋收有限公司',
+          label: '黑龙江秋收有限公司'
+        }, {
+          value: '黑龙江欣洋粮食贸易有限公司',
+          label: '黑龙江欣洋粮食贸易有限公司'
+        }, {
+          value: '黑龙江益储益运粮食贸易有限公司',
+          label: '黑龙江益储益运粮食贸易有限公司'
+        }, {
+          value: '黑龙江启兴粮食贸易有限公司',
+          label: '黑龙江启兴粮食贸易有限公司'
+        }],
+        companyNameEWOptions: [{
+          value: '天津建源供应链管理有限公司',
+          label: '天津建源供应链管理有限公司'
+        },{
+          value: '厦门建发物产有限公司',
+          label: '厦门建发物产有限公司'
+        }],
+        companyName: '黑龙江中天昊元贸易有限公司',
+        companyNameEW: '厦门建发物产有限公司',
+        ewCustomer: '黑龙江利润元粮食贸易有限公司',
+        printSeparately:false,
+        onePrint:false,
+        dialogDataList:[],
+        isShowPrintType1:false
       }
     },
     mounted() {
@@ -324,8 +453,215 @@
         this.information = '结算'
       }
       this.getList()
+      if(localStorage.getItem('compNameoptions')){
+        var company=JSON.parse(localStorage.getItem('compNameoptions'))
+        
+        var extra=company.filter((item)=>{
+          return item!='黑龙江中天昊元贸易有限公司'
+          &&item!='黑龙江利润元粮食贸易有限公司'
+          &&item!= '黑龙江众利合粮食贸易有限公司'
+          &&item!='黑龙江鑫满仓粮食贸易有限公司'
+          &&item!='黑龙江谷香粮食贸易有限公司'
+          &&item!='黑龙江秋收有限公司'
+          &&item!= '黑龙江欣洋粮食贸易有限公司'
+          &&item!='黑龙江益储益运粮食贸易有限公司'
+          &&item!='黑龙江启兴粮食贸易有限公司'
+        })
+        if(extra.length>0){
+          this.companyNameOptions=[
+          {
+          value: '黑龙江中天昊元贸易有限公司',
+          label: '黑龙江中天昊元贸易有限公司'
+        }, {
+          value: '黑龙江利润元粮食贸易有限公司',
+          label: '黑龙江利润元粮食贸易有限公司'
+        }, {
+          value: '黑龙江众利合粮食贸易有限公司',
+          label: '黑龙江众利合粮食贸易有限公司'
+        }, {
+          value: '黑龙江鑫满仓粮食贸易有限公司',
+          label: '黑龙江鑫满仓粮食贸易有限公司'
+        },{
+          value: '黑龙江欣洋粮食贸易有限公司',
+          label: '黑龙江欣洋粮食贸易有限公司'
+        },{
+          value: '黑龙江谷香粮食贸易有限公司',
+          label: '黑龙江谷香粮食贸易有限公司'
+        },{
+          value: '黑龙江秋收有限公司',
+          label: '黑龙江秋收有限公司'
+        },  {
+          value: '黑龙江益储益运粮食贸易有限公司',
+          label: '黑龙江益储益运粮食贸易有限公司'
+        }, {
+          value: '黑龙江启兴粮食贸易有限公司',
+          label: '黑龙江启兴粮食贸易有限公司'
+        }]
+        
+          this.ewCustomerOptions= [
+          {
+          value: '天津建源供应链管理有限公司',
+          label: '天津建源供应链管理有限公司'
+        },{
+          value: '黑龙江中天昊元贸易有限公司',
+          label: '黑龙江中天昊元贸易有限公司'
+        }, {
+          value: '黑龙江利润元粮食贸易有限公司',
+          label: '黑龙江利润元粮食贸易有限公司'
+        }, {
+          value: '黑龙江众利合粮食贸易有限公司',
+          label: '黑龙江众利合粮食贸易有限公司'
+        }, {
+          value: '黑龙江鑫满仓粮食贸易有限公司',
+          label: '黑龙江鑫满仓粮食贸易有限公司'
+        },{
+          value: '黑龙江欣洋粮食贸易有限公司',
+          label: '黑龙江欣洋粮食贸易有限公司'
+        },{
+          value: '黑龙江谷香粮食贸易有限公司',
+          label: '黑龙江谷香粮食贸易有限公司'
+        },{
+          value: '黑龙江秋收有限公司',
+          label: '黑龙江秋收有限公司'
+        },  {
+          value: '黑龙江益储益运粮食贸易有限公司',
+          label: '黑龙江益储益运粮食贸易有限公司'
+        }, {
+          value: '黑龙江启兴粮食贸易有限公司',
+          label: '黑龙江启兴粮食贸易有限公司'
+        }]
+          this.companyNameEWOptions=[
+          {
+          value: '天津建源供应链管理有限公司',
+          label: '天津建源供应链管理有限公司'
+        },{
+          value: '黑龙江中天昊元贸易有限公司',
+          label: '黑龙江中天昊元贸易有限公司'
+        }, {
+          value: '黑龙江利润元粮食贸易有限公司',
+          label: '黑龙江利润元粮食贸易有限公司'
+        }, {
+          value: '黑龙江众利合粮食贸易有限公司',
+          label: '黑龙江众利合粮食贸易有限公司'
+        }, {
+          value: '黑龙江鑫满仓粮食贸易有限公司',
+          label: '黑龙江鑫满仓粮食贸易有限公司'
+        },{
+          value: '黑龙江欣洋粮食贸易有限公司',
+          label: '黑龙江欣洋粮食贸易有限公司'
+        },{
+          value: '黑龙江谷香粮食贸易有限公司',
+          label: '黑龙江谷香粮食贸易有限公司'
+        },{
+          value: '黑龙江秋收有限公司',
+          label: '黑龙江秋收有限公司'
+        },  {
+          value: '黑龙江益储益运粮食贸易有限公司',
+          label: '黑龙江益储益运粮食贸易有限公司'
+        }, {
+          value: '黑龙江启兴粮食贸易有限公司',
+          label: '黑龙江启兴粮食贸易有限公司'
+        }]
+           if(localStorage.getItem('print_company_name')){
+            this.companyName=localStorage.getItem('print_company_name')
+          }else{
+            this.companyName=extra[0]
+          }
+          if(localStorage.getItem('print_company_name_ew')){
+            this.companyNameEW=localStorage.getItem('print_company_name_ew')
+          }else{
+            this.companyNameEW=extra[0]
+          }
+          if(localStorage.getItem('print_customer_name_ew')){
+            this.ewCustomer=localStorage.getItem('print_customer_name_ew')
+          }else{
+            this.ewCustomer=extra[0]
+          }
+          for (let i = 0; i < extra.length; i++) {
+            this.ewCustomerOptions.push({value: extra[i],label:extra[i]})
+            this.companyNameOptions.push({value: extra[i],label:extra[i]})
+            this.companyNameEWOptions.push({value: extra[i],label:extra[i]})
+          }
+        }
+      }
     },
     methods: {
+      changeEw(e) {
+        this.ddchecked = false
+        if (e) {
+          this.printSeparately = true
+        } else {
+          this.printSeparately = false
+        }
+      },
+      changeEwDD(e) {
+        this.checked = false
+        if (e) {
+          this.printSeparately = true
+        } else {
+          this.printSeparately = false
+        }
+      },
+      makeEWjjSelectPrintList() {
+        let _selectPrint_EWjjSelectPrintList = JSON.parse(JSON.stringify(this.jjSelectPrintList));
+        for (let i = 0; i < _selectPrint_EWjjSelectPrintList.length; i++) {
+          let _data = _selectPrint_EWjjSelectPrintList[i];
+          _data.compName = this.companyNameEW;
+          _data.customer = this.ewCustomer
+        }
+        localStorage.setItem('selectPrint_EWjjSelectPrintList', JSON.stringify(_selectPrint_EWjjSelectPrintList))
+      },
+      printBig1(type, radioType) {
+        this.printData.extra1=true
+        localStorage.setItem('print_company_name',this.companyName)
+        localStorage.setItem('print_company_name_ew',this.companyNameEW)
+        localStorage.setItem('print_customer_name_ew',this.ewCustomer)
+           localStorage.removeItem('print_in_data')
+        // 打印额外
+        if (this.checked || this.ddchecked) {
+          this.printData.extra2=true
+          if(this.ddchecked){
+            localStorage.setItem('print_alone_extra',true)
+          }else{
+            localStorage.setItem('print_alone_extra',false)
+          }
+          //  this.selectEW = true;
+        }else{
+          this.printData.extra2=false
+        }
+        let _list1 = []
+        let _list2 = []
+          localStorage.setItem('printData1',_list1)
+          _list1 = JSON.stringify(this.printData)
+          _list2 = JSON.stringify(this.customerList)
+          localStorage.setItem('print_pay_data',_list1)
+            window.open(
+              '../../../../../static/payprint1.html?type=2&customerList=' +
+              _list2 +
+              '&printTypeList=打印身份证,打印银行卡,打印结算凭证,打印检斤单.结算凭证'
+            )
+        // if (type == 1) {
+        //   localStorage.setItem('selectPrint_jjSelectPrintList', JSON.stringify(this.jjSelectPrintList))
+        //   window.open('../../../../static/weightCheck.html?type=2&radioType=' + radioType + '&selectEW=' + this
+        //     .checked + '&selectEWDD=' + this.ddchecked)
+        // } else if (type == 2) {
+        //   localStorage.setItem('selectPrint_jjSelectPrintList', JSON.stringify(this.excelPrintData))
+        //   window.open('../../../../static/weightCheck.html?type=2&radioType=' + radioType)
+        // } else {
+        //   console.log(this.dialogDataList)
+          
+        //   localStorage.setItem('print_in_data',JSON.stringify(this.dialogDataList).replace(/%/g, 'baifenhao'))
+        //   // window.open('../../../../static/weightCheck.html?type=2&tableData=' + JSON.stringify(this.dialogDataList).replace(/%/g, 'baifenhao'))
+        //   window.open('../../../../static/weightCheck.html?type=2&tableData=' )
+        // }
+      },
+      typePrintCannelClick1() {
+        this.isShowPrintType1= false
+      },
+      printExtra(){
+        this.isShowPrint=false
+        this.isShowPrintType1=true
+      },
       inputFocus(event) {
         event.currentTarget.select()
       },
@@ -353,39 +689,40 @@
         })
       },
       closeDialog() {
-        html2canvas(this.$refs.saveImg.$el).then((canvas) => {
-          let dataURL = canvas.toDataURL('image/png')
-          this.imgUrl = dataURL
-          if (this.imgUrl !== '') {
-            let b = this.dataURLtoFile(this.imgUrl, 'printImage')
-            let formdata = new FormData()
-            formdata.append('file', b)
-            axios({
-              method: 'post',
-              url:this.global.uploadPath,
-              data: formdata,
-            }).then((response) => {
-              //编辑接口
-              this.paymentList.pictureAddress = response.data.data.url
-              settlementEdit(this.paymentList)
-                .toPromise()
-                .then((response) => {
-                })
-              this.paymentList = []
+        // html2canvas(this.$refs.saveImg.$el).then((canvas) => {
+        //   let dataURL = canvas.toDataURL('image/png')
+        //   this.imgUrl = dataURL
+        //   if (this.imgUrl !== '') {
+        //     let b = this.dataURLtoFile(this.imgUrl, 'printImage')
+        //     let formdata = new FormData()
+        //     formdata.append('file', b)
+        //     axios({
+        //       method: 'post',
+        //       url:this.global.uploadPath,
+        //       data: formdata,
+        //     }).then((response) => {
+        //       //编辑接口
+        //       this.paymentList.pictureAddress = response.data.data.url
+        //       settlementEdit(this.paymentList)
+        //         .toPromise()
+        //         .then((response) => {
+        //         })
+        //       this.paymentList = []
 
-            })
-            this.dialogTableVisible = true
-          }
-        })
-        this.isShowPrint = false
-        this.$router.push({
-          path: 'paymentManagement'
-        })
+        //     })
+        //     this.dialogTableVisible = true
+        //   }
+        // })
+        // this.isShowPrint = false
+        // this.$router.push({
+        //   path: 'paymentManagement'
+        // })
       },
       printSmall() {
         window.open('../../../../../static/payprint1.html?type=1&dataList=' + JSON.stringify(this.printData))
       },
       printBig() {
+        localStorage.setItem('print_alone_extra',false)
         localStorage.setItem('print_pay_data',JSON.stringify(this.printData))
         window.open('../../../../../static/payprint1.html?type=2')
       },
@@ -928,4 +1265,74 @@
     border-collapse: collapse;
     border: 3px solid #333333;
   }
+   .mask1 {
+    background: black;
+    width: 100vw;
+    height: 100vh;
+    position: fixed;
+    top: 0;
+    z-index: 1001;
+    opacity: 0.3;
+  }
+
+  .print-type-title1 {
+    text-align: center;
+    font-size: 18px;
+    margin: 20px;
+  }
+
+
+  .print-type-checkbox1 {
+    // padding-left: 20px;
+  }
+
+  .print-type1 {
+    position: absolute;
+    top: 0;
+    bottom: 0;
+    left: 0;
+    right: 0;
+    margin: auto;
+    width: 440px;
+    height: 320px;
+    background: white;
+    border-radius: 10px;
+    z-index: 1001;
+  }
+  .shdw-style1 {
+    display: flex;
+    justify-content: space-between;
+    align-items: center;
+    padding: 0 20px;
+    margin-top: 20px;
+  }
+  .print-type-ew {
+    display: flex;
+    justify-content: space-between;
+    padding: 0 20px;
+
+    /deep/.el-radio__label {
+      font-size: 14px;
+    }
+
+    margin-top: 10px;
+  }
+  .ew-print {
+    padding: 0 20px;
+    margin-top: 10px;
+
+    // display: flex;
+    // justify-content: space-between;
+    // align-content: center;
+    .row {
+      display: flex;
+      margin-top: 10px;
+      align-items: center;
+    }
+  }
+    .bottom-btn {
+    margin: 20px 0;
+    text-align: center;
+  }
+
 </style>