Explorar el Código

增加费用确认单

lichao hace 3 años
padre
commit
1c34a0527e

+ 0 - 2
src/views/Warehousing/cargoClearance/index.vue

@@ -1051,8 +1051,6 @@ export default {
         timeInterval: null,
         fFeeStatus: null,
       };
-      this.userOptions = [];
-      this.fMblnoOptions = [];
       this.handleQuery();
     },
     showAddOrUpdate(data) {

+ 58 - 9
src/views/Warehousing/components/incomeMoney.vue

@@ -42,7 +42,7 @@
           size="small"
           type="primary"
           @click="feesConfirm"
-          v-if="false"
+          v-if="isShowFeesConfirm == 0"
         >费用确认单</el-button>
         <el-button
           type="primary"
@@ -671,7 +671,7 @@
           style="
             display: flex;
             justify-content: center;
-            font-size: 24px;
+            font-size: 28px;
             margin-bottom: 5px;
           "
         >
@@ -683,11 +683,11 @@
             justify-content: center;
             margin-bottom: 5px;
           ">
-          <div style="font-size: 18px">费用确认</div>
+          <div style="font-size: 24px;">费用确认</div>
         </div>
         <div style="display: flex;justify-content: space-between;">
           <div>
-            <div>业务编号:</div>
+            <div>业务编号:{{ form.fBillno }}</div>
             <div>客户名称:{{ form.fCorpidName }}</div>
             <div>提单号:{{ form.fBillno }}</div>
           </div>
@@ -699,6 +699,7 @@
           <div>
             <div>制单人:{{ form.createBy }}</div>
             <div>打印日期:{{ nowTime | fBsdateFormat }}</div>
+            <div>品名:{{ form.fGoodsid | goodsFormat(goodsOptions) }}</div>
           </div>
         </div>
         <div class="print_table" style="display: flex">
@@ -745,11 +746,11 @@
         </div>
         <div>人民币汇款路径:</div>
         <div>公司名称:{{ company }}</div>
-        <div>纳税人识别号:</div>
-        <div>地址:</div>
-        <div>电话:</div>
-        <div>开户行:</div>
-        <div>银行账户:</div>
+        <div>纳税人识别号:{{ Identifier }}</div>
+        <div>地址:{{ address }}</div>
+        <div>电话:{{ phone }}</div>
+        <div>开户行:{{ bank }}</div>
+        <div>银行账户:{{ bankAccount }}</div>
       </div>
       <span slot="footer" class="dialog-footer">
         <el-button
@@ -837,6 +838,10 @@ export default {
       type: Array,
       default: [],
     },
+    goodsOptions: {
+      type: Array,
+      default: [],
+    },
   },
   data() {
     return {
@@ -858,9 +863,44 @@ export default {
       print_fyqr: false,
       company: '',
       warehouseOptions:[],
+      // 识别号
+      Identifier: '',
+      // 地址
+      address: '',
+      // 电话
+      phone: '',
+      // 开户行
+      bank: '',
+      // 银行账户
+      bankAccount: '',
+      // 是否启用请款单
+      isShowInvoice: null,
+      // 是否启用费用确认单
+      isShowFeesConfirm: null,
     };
   },
   created() {
+    this.getConfigKey("taxpayer.identification.number").then((response) => {
+      this.Identifier = response.msg;
+    });
+    this.getConfigKey("print.address").then((response) => {
+      this.address = response.msg;
+    });
+    this.getConfigKey("print.phone").then((response) => {
+      this.phone = response.msg;
+    });
+    this.getConfigKey("print.bank").then((response) => {
+      this.bank = response.msg;
+    });
+    this.getConfigKey("print.bank.account").then((response) => {
+      this.bankAccount = response.msg;
+    });
+    this.getConfigKey("warehouse.show.invoice").then((response) => {
+      this.isShowInvoice = response.msg;
+    });
+    this.getConfigKey("warehouse.show.feesConfirm").then((response) => {
+      this.isShowFeesConfirm = response.msg;
+    });
     this.company = Cookies.get("companyName")
     listWarehousesss({fStatus: 0, delFlag: 0}).then((response) => {
       this.warehouseOptions = response.rows;
@@ -904,6 +944,15 @@ export default {
       });
       return name;
     },
+    goodsFormat(row, goodsOptions) {
+      let goods;
+      goodsOptions.map((e) => {
+        if (row == e.fId) {
+          goods = e.fName;
+        }
+      });
+      return goods;
+    },
   },
   methods: {
     feeChange() {

+ 268 - 0
src/views/Warehousing/components/payMoney.vue

@@ -34,10 +34,17 @@
           type="info"
           size="small"
           @click.prevent="printCr"
+          v-if="isShowInvoice == 0"
         >请款单
         </el-button
         >
         <el-button
+          size="small"
+          type="primary"
+          @click="feesConfirm"
+          v-if="isShowFeesConfirm == 0"
+        >费用确认单</el-button>
+        <el-button
           type="primary"
           size="small"
           v-if="browseStatus"
@@ -613,6 +620,113 @@
         <el-button @click="print_Cr = false" size="mini">取消 </el-button>
       </span>
     </el-dialog>
+
+    <!--    费用确认单-->
+    <el-dialog
+      :visible.sync="print_fyqr"
+      width="70%"
+      :close-on-click-modal="false"
+      :modal="false"
+    >
+      <div id="print_fyqr" class="print-div">
+        <div
+          class="print-title"
+          style="
+            display: flex;
+            justify-content: center;
+            font-size: 28px;
+            margin-bottom: 5px;
+          "
+        >
+          {{ company }}
+        </div>
+        <div
+          style="
+            display: flex;
+            justify-content: center;
+            margin-bottom: 5px;
+          ">
+          <div style="font-size: 24px;">费用确认</div>
+        </div>
+        <div style="display: flex;justify-content: space-between;">
+          <div>
+            <div>业务编号:{{ form.fBillno }}</div>
+            <div>客户名称:{{ form.fCorpidName }}</div>
+            <div>提单号:{{ form.fBillno }}</div>
+          </div>
+          <div>
+            <div>制单日期:{{ form.createTime | fBsdateFormat }}</div>
+            <div>仓库名称:{{ form.fWarehouseid | warehouseFormat(warehouseOptions) }}</div>
+            <div>箱型/箱量:{{ form.fCntval }}</div>
+          </div>
+          <div>
+            <div>制单人:{{ form.createBy }}</div>
+            <div>打印日期:{{ nowTime | fBsdateFormat }}</div>
+            <div>品名:{{ form.fGoodsid | goodsFormat(goodsOptions) }}</div>
+          </div>
+        </div>
+        <div class="print_table" style="display: flex">
+          <table
+            border="0"
+            cellspacing="0"
+            cellpadding="0"
+            style="width: 100%; line-height: 30px"
+          >
+            <tr>
+              <td>序号</td>
+              <td>费用项目</td>
+              <td>计价单位</td>
+              <td>数量</td>
+              <td>单价</td>
+              <td>是否含税</td>
+              <td>税率</td>
+              <td>不含税金额</td>
+              <td>税额</td>
+              <td>应收金额</td>
+              <td>备注</td>
+            </tr>
+            <tr v-for="(item, index) in PrintingCrlist" :key="index">
+              <td>{{ index + 1 }}</td>
+              <td>{{ item.fFeeid | fFeetFormat(fCNameOptions) }}</td>
+              <td>{{ item.fFeeUnitid | fFeetUnitFormat(fFeetUnitOptions) }}</td>
+              <td>{{ item.fQty }}</td>
+              <td>{{ item.fUnitprice }}</td>
+              <td>{{ item.fTaxrate != 0? '√': '×' }}</td>
+              <td>{{ item.fTaxrate }}</td>
+              <td>{{ item.exclTax }}</td>
+              <td>{{ item.taxAmount }}</td>
+              <td>{{ item.fAmount }}</td>
+              <td>{{ item.remark }}</td>
+            </tr>
+            <tr>
+              <td colspan="7">合计</td>
+              <td>{{ allExclTax }}</td>
+              <td>{{ allTaxAmount }}</td>
+              <td>{{ allDrAmount }}</td>
+              <td></td>
+            </tr>
+          </table>
+        </div>
+        <div>人民币汇款路径:</div>
+        <div>公司名称:{{ company }}</div>
+        <div>纳税人识别号:{{ Identifier }}</div>
+        <div>地址:{{ address }}</div>
+        <div>电话:{{ phone }}</div>
+        <div>开户行:{{ bank }}</div>
+        <div>银行账户:{{ bankAccount }}</div>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button
+          type="primary"
+          @click="
+            addprint('fyqrd');
+            print_fyqr = false;
+          "
+        >打印
+        </el-button>
+        <el-button @click="print_fyqr = false">取消 </el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 
@@ -621,6 +735,12 @@ import { operationAgreement } from "@/api/agreement/agreement";
 import {feesCheck,revokefeeCheck} from "@/api/warehouseBusiness/warehouseInStock";
 import Cookies from "js-cookie";
 import print from "print-js";
+import {
+  listWarehouse,
+  treeselect,
+  listWarehousesss,
+  deliveryDetails
+} from "@/api/basicdata/warehouse";
 
 export default {
   name: 'payMoney',
@@ -673,6 +793,18 @@ export default {
       type: Object,
       default: null,
     },
+    goodsOptions: {
+      type: Array,
+      default: [],
+    },
+    CntrTable: {
+      type: Array,
+      default: [],
+    },
+    cntrList: {
+      type: Array,
+      default: [],
+    },
   },
   data() {
     return {
@@ -684,6 +816,7 @@ export default {
       // dialogWhgenlegList: [],
       pageNum: 1,
       pageSize: 10,
+      warehouseOptions: [],
       // 收款信息明细
       PrintingCrlist: [],
       allCrfAmount: 0,
@@ -691,10 +824,56 @@ export default {
       // Cr打印弹窗是否开启
       print_Cr: false,
       company: '',
+      nowTime: '',
+      // 税额总数
+      allTaxAmount: 0,
+      // 不含税金额总数
+      allExclTax: 0,
+      // 收款金额合计
+      allDrAmount: 0,
+      print_fyqr: false,
+      // 识别号
+      Identifier: '',
+      // 地址
+      address: '',
+      // 电话
+      phone: '',
+      // 开户行
+      bank: '',
+      // 银行账户
+      bankAccount: '',
+      // 是否启用请款单
+      isShowInvoice: null,
+      // 是否启用费用确认单
+      isShowFeesConfirm: null,
     };
   },
   created() {
     this.company = Cookies.get("companyName")
+    this.getConfigKey("taxpayer.identification.number").then((response) => {
+      this.Identifier = response.msg;
+    });
+    this.getConfigKey("print.address").then((response) => {
+      this.address = response.msg;
+    });
+    this.getConfigKey("print.phone").then((response) => {
+      this.phone = response.msg;
+    });
+    this.getConfigKey("print.bank").then((response) => {
+      this.bank = response.msg;
+    });
+    this.getConfigKey("print.bank.account").then((response) => {
+      this.bankAccount = response.msg;
+    });
+    this.getConfigKey("warehouse.show.invoice").then((response) => {
+      this.isShowInvoice = response.msg;
+    });
+    this.getConfigKey("warehouse.show.feesConfirm").then((response) => {
+      this.isShowFeesConfirm = response.msg;
+    });
+    listWarehousesss({fStatus: 0, delFlag: 0}).then((response) => {
+      this.warehouseOptions = response.rows;
+    });
   },
   filters: {
     fMblnoFormat(row, fMblnoOptions) {
@@ -725,6 +904,33 @@ export default {
       });
       return name;
     },
+    warehouseFormat(row, warehouseOptions) {
+      let warehouse;
+      warehouseOptions.map((e) => {
+        if (row == e.fId) {
+          warehouse = e.fName;
+        }
+      });
+      return warehouse;
+    },
+    goodsFormat(row, goodsOptions) {
+      let goods;
+      goodsOptions.map((e) => {
+        if (row == e.fId) {
+          goods = e.fName;
+        }
+      });
+      return goods;
+    },
+    fFeetUnitFormat(row, fFeetUnitOptions) {
+      let name;
+      fFeetUnitOptions.map((e) => {
+        if (row == e.dictValue) {
+          name = e.dictLabel;
+        }
+      });
+      return name;
+    },
   },
   methods: {
     feeChange() {
@@ -955,6 +1161,68 @@ export default {
             scanStyles: false,
           });
           break;
+        case "fyqrd":
+          print({
+            printable: "print_fyqr",
+            type: "html",
+            style: style, // 亦可使用引入的外部css;
+            scanStyles: false,
+          });
+          break;
+      }
+    },
+    // 打印费用确认单准备
+    feesConfirm() {
+      if (this.PrintingCrlist.length > 0) {
+        for (let item in this.PrintingCrlist) {
+          if (!this.PrintingCrlist[item].fId) {
+            return this.$message.error("请先保存!");
+          }
+        }
+        if (this.CntrTable.length > 0) {
+          let arr = [];
+          this.CntrTable.map((e) => {
+            this.cntrList.map((item) => {
+              if (item.fId == e.fCntrid) {
+                arr.push(item.fName + "X" + e.fCntrcount);
+              }
+            });
+          });
+          arr = [...new Set(arr)];
+          this.form.fCntval = arr.join(",");
+        } else {
+          this.form.fCntval = null;
+        }
+        this.allTaxAmount = 0;
+        this.allExclTax = 0;
+        this.allDrAmount = 0;
+        this.PrintingCrlist.forEach(item => {
+          // 税额
+          this.$set(item, 'taxAmount', Number(item.fAmount) / (1 + Number(Number(item.fTaxrate) / 100)))
+          item.taxAmount = item.taxAmount.toSuperFixed(2)
+          // 不含税金额
+          this.$set(item, 'exclTax', Number(item.fAmount) - Number(item.taxAmount))
+          item.exclTax = item.exclTax.toSuperFixed(2)
+          this.allTaxAmount = Number(this.allTaxAmount) + Number(item.taxAmount)
+          this.allExclTax = Number(this.allExclTax) + Number(item.exclTax)
+          this.allDrAmount = Number(this.allDrAmount) + Number(item.fAmount)
+          this.allTaxAmount = this.allTaxAmount.toSuperFixed(2)
+          this.allExclTax = this.allExclTax.toSuperFixed(2)
+          this.allDrAmount = this.allDrAmount.toSuperFixed(2)
+        })
+        this.nowTime = new Date().toLocaleDateString()
+        for (let corp in this.fMblnoOptions) {
+          if (this.form.fCorpid === this.fMblnoOptions[corp].fId) {
+            this.$set(
+              this.form,
+              "fCorpidName",
+              this.fMblnoOptions[corp].fName
+            );
+          }
+        }
+        this.print_fyqr = true;
+      } else {
+        this.$message.error("请选择需要打印的明细!");
       }
     },
   },

+ 412 - 0
src/views/Warehousing/goodsTransfer/AddOrUpdate.vue

@@ -665,6 +665,12 @@
               >作业费协议</el-button
             >
             <el-button
+              size="small"
+              type="primary"
+              @click="feesConfirm"
+              v-if="isShowFeesConfirm == 0"
+            >费用确认单</el-button>
+            <el-button
               type="primary"
               size="small"
               v-if="browseStatus"
@@ -1055,10 +1061,17 @@
               type="info"
               size="small"
               @click.prevent="printCr"
+              v-if="isShowInvoice == 0"
             >请款单
             </el-button
             >
             <el-button
+              size="small"
+              type="primary"
+              @click="feesCrConfirm"
+              v-if="isShowFeesConfirm == 0"
+            >费用确认单</el-button>
+            <el-button
               type="primary"
               size="small"
               v-if="browseStatus"
@@ -1907,6 +1920,219 @@
         <el-button @click="print_Cr = false" size="mini">取消 </el-button>
       </span>
     </el-dialog>
+    <!--    费用确认单-->
+    <el-dialog
+      :visible.sync="print_fyqr"
+      width="70%"
+      :close-on-click-modal="false"
+      :modal="false"
+    >
+      <div id="print_fyqr" class="print-div">
+        <div
+          class="print-title"
+          style="
+            display: flex;
+            justify-content: center;
+            font-size: 24px;
+            margin-bottom: 5px;
+          "
+        >
+          {{ company }}
+        </div>
+        <div
+          style="
+            display: flex;
+            justify-content: center;
+            margin-bottom: 5px;
+          ">
+          <div style="font-size: 18px">费用确认</div>
+        </div>
+        <div style="display: flex;justify-content: space-between;">
+          <div>
+            <div>业务编号:{{ form.fBillno }}</div>
+            <div>客户名称:{{ form.fCorpidName }}</div>
+            <div>提单号:{{ form.fBillno }}</div>
+          </div>
+          <div>
+            <div>制单日期:{{ form.createTime | fBsdateFormat }}</div>
+            <div>仓库名称:{{ form.fWarehouseid | warehouseFormat(warehouseOptions) }}</div>
+            <div>箱型/箱量:{{ form.fCntval }}</div>
+          </div>
+          <div>
+            <div>制单人:{{ form.createBy }}</div>
+            <div>打印日期:{{ nowTime | fBsdateFormat }}</div>
+            <div>品名:{{ form.fProductName }}</div>
+          </div>
+        </div>
+        <div class="print_table" style="display: flex">
+          <table
+            border="0"
+            cellspacing="0"
+            cellpadding="0"
+            style="width: 100%; line-height: 30px"
+          >
+            <tr>
+              <td>序号</td>
+              <td>费用项目</td>
+              <td>计价单位</td>
+              <td>数量</td>
+              <td>单价</td>
+              <td>是否含税</td>
+              <td>税率</td>
+              <td>不含税金额</td>
+              <td>税额</td>
+              <td>应收金额</td>
+              <td>备注</td>
+            </tr>
+            <tr v-for="(item, index) in Collectionoptionss" :key="index">
+              <td>{{ index + 1 }}</td>
+              <td>{{ item.fFeeid | fFeetFormat(fDNameOptions) }}</td>
+              <td>{{ item.fFeeUnitid | fFeetUnitFormat(fFeetUnitOptions) }}</td>
+              <td>{{ item.fQty }}</td>
+              <td>{{ item.fUnitprice }}</td>
+              <td>{{ item.fTaxrate != 0? '√': '×' }}</td>
+              <td>{{ item.fTaxrate }}</td>
+              <td>{{ item.exclTax }}</td>
+              <td>{{ item.taxAmount }}</td>
+              <td>{{ item.fAmount }}</td>
+              <td>{{ item.remark }}</td>
+            </tr>
+            <tr>
+              <td colspan="7">合计</td>
+              <td>{{ allExclTax }}</td>
+              <td>{{ allTaxAmount }}</td>
+              <td>{{ allDrAmount }}</td>
+              <td></td>
+            </tr>
+          </table>
+        </div>
+        <div>人民币汇款路径:</div>
+        <div>公司名称:{{ company }}</div>
+        <div>纳税人识别号:{{ Identifier }}</div>
+        <div>地址:{{ address }}</div>
+        <div>电话:{{ phone }}</div>
+        <div>开户行:{{ bank }}</div>
+        <div>银行账户:{{ bankAccount }}</div>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button
+          type="primary"
+          @click="
+            addprint('fyqrd');
+            print_fyqr = false;
+          "
+        >打印
+        </el-button>
+        <el-button @click="print_fyqr = false">取消 </el-button>
+      </span>
+    </el-dialog>
+    <!--    费用确认单(付费)-->
+    <el-dialog
+      :visible.sync="print_Crfyqr"
+      width="70%"
+      :close-on-click-modal="false"
+      :modal="false"
+    >
+      <div id="print_Crfyqr" class="print-div">
+        <div
+          class="print-title"
+          style="
+            display: flex;
+            justify-content: center;
+            font-size: 28px;
+            margin-bottom: 5px;
+          "
+        >
+          {{ company }}
+        </div>
+        <div
+          style="
+            display: flex;
+            justify-content: center;
+            margin-bottom: 5px;
+          ">
+          <div style="font-size: 24px;">费用确认</div>
+        </div>
+        <div style="display: flex;justify-content: space-between;">
+          <div>
+            <div>业务编号:{{ form.fBillno }}</div>
+            <div>客户名称:{{ form.fCorpidName }}</div>
+            <div>提单号:{{ form.fBillno }}</div>
+          </div>
+          <div>
+            <div>制单日期:{{ form.createTime | fBsdateFormat }}</div>
+            <div>仓库名称:{{ form.fWarehouseid | warehouseFormat(warehouseOptions) }}</div>
+            <div>箱型/箱量:{{ form.fCntval }}</div>
+          </div>
+          <div>
+            <div>制单人:{{ form.createBy }}</div>
+            <div>打印日期:{{ nowTime | fBsdateFormat }}</div>
+            {{form.fGoodsid}}
+            <div>品名:{{ form.fProductName }}</div>
+          </div>
+        </div>
+        <div class="print_table" style="display: flex">
+          <table
+            border="0"
+            cellspacing="0"
+            cellpadding="0"
+            style="width: 100%; line-height: 30px"
+          >
+            <tr>
+              <td>序号</td>
+              <td>费用项目</td>
+              <td>计价单位</td>
+              <td>数量</td>
+              <td>单价</td>
+              <td>是否含税</td>
+              <td>税率</td>
+              <td>不含税金额</td>
+              <td>税额</td>
+              <td>应收金额</td>
+              <td>备注</td>
+            </tr>
+            <tr v-for="(item, index) in PrintingCrlist" :key="index">
+              <td>{{ index + 1 }}</td>
+              <td>{{ item.fFeeid | fFeetFormat(fCNameOptions) }}</td>
+              <td>{{ item.fFeeUnitid | fFeetUnitFormat(fFeetUnitOptions) }}</td>
+              <td>{{ item.fQty }}</td>
+              <td>{{ item.fUnitprice }}</td>
+              <td>{{ item.fTaxrate != 0? '√': '×' }}</td>
+              <td>{{ item.fTaxrate }}</td>
+              <td>{{ item.exclTax }}</td>
+              <td>{{ item.taxAmount }}</td>
+              <td>{{ item.fAmount }}</td>
+              <td>{{ item.remark }}</td>
+            </tr>
+            <tr>
+              <td colspan="7">合计</td>
+              <td>{{ allExclTax }}</td>
+              <td>{{ allTaxAmount }}</td>
+              <td>{{ allDrAmount }}</td>
+              <td></td>
+            </tr>
+          </table>
+        </div>
+        <div>人民币汇款路径:</div>
+        <div>公司名称:{{ company }}</div>
+        <div>纳税人识别号:{{ Identifier }}</div>
+        <div>地址:{{ address }}</div>
+        <div>电话:{{ phone }}</div>
+        <div>开户行:{{ bank }}</div>
+        <div>银行账户:{{ bankAccount }}</div>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button
+          type="primary"
+          @click="
+            addprint('Crfyqrd');
+            print_Crfyqr = false;
+          "
+        >打印
+        </el-button>
+        <el-button @click="print_Crfyqr = false">取消 </el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 
@@ -2391,6 +2617,30 @@ export default {
       allCrfQty: 0,
       // Cr打印弹窗是否开启
       print_Cr: false,
+      // 税额总数
+      allTaxAmount: 0,
+      // 不含税金额总数
+      allExclTax: 0,
+      // 收款金额合计
+      allDrAmount: 0,
+      print_fyqr: false,
+      activeName: 'searchList',
+      // 识别号
+      Identifier: '',
+      // 地址
+      address: '',
+      // 电话
+      phone: '',
+      // 开户行
+      bank: '',
+      // 银行账户
+      bankAccount: '',
+      nowTime: null,
+      print_Crfyqr: false,
+      // 是否启用请款单
+      isShowInvoice: null,
+      // 是否启用费用确认单
+      isShowFeesConfirm: null,
     };
   },
   created() {
@@ -2424,6 +2674,27 @@ export default {
     this.getDicts("data_ifdamage_status").then((response) => {
       this.fIfdamageOptions = response.data;
     });
+    this.getConfigKey("taxpayer.identification.number").then((response) => {
+      this.Identifier = response.msg;
+    });
+    this.getConfigKey("print.address").then((response) => {
+      this.address = response.msg;
+    });
+    this.getConfigKey("print.phone").then((response) => {
+      this.phone = response.msg;
+    });
+    this.getConfigKey("print.bank").then((response) => {
+      this.bank = response.msg;
+    });
+    this.getConfigKey("print.bank.account").then((response) => {
+      this.bankAccount = response.msg;
+    });
+    this.getConfigKey("warehouse.show.invoice").then((response) => {
+      this.isShowInvoice = response.msg;
+    });
+    this.getConfigKey("warehouse.show.feesConfirm").then((response) => {
+      this.isShowFeesConfirm = response.msg;
+    });
     listWarehousesss({ fStatus: 0, delFlag: 0 }).then((response) => {
       this.warehouseOptions = response.rows;
     });
@@ -2491,6 +2762,15 @@ export default {
       });
       return goods;
     },
+    warehouseFormat(row, warehouseOptions) {
+      let warehouse;
+      warehouseOptions.map((e) => {
+        if (row == e.fId) {
+          warehouse = e.fName;
+        }
+      });
+      return warehouse;
+    },
     fMblnoFormat(row, fMblnoOptions) {
       let name;
       fMblnoOptions.map((e) => {
@@ -2519,6 +2799,15 @@ export default {
       });
       return name;
     },
+    fFeetUnitFormat(row, fFeetUnitOptions) {
+      let name;
+      fFeetUnitOptions.map((e) => {
+        if (row == e.dictValue) {
+          name = e.dictLabel;
+        }
+      });
+      return name;
+    },
   },
   methods: {
     init() {
@@ -4314,6 +4603,129 @@ export default {
             scanStyles: false,
           });
           break;
+        case "fyqrd":
+          print({
+            printable: "print_fyqr",
+            type: "html",
+            style: style, // 亦可使用引入的外部css;
+            scanStyles: false,
+          });
+          break;
+        case "Crfyqrd":
+          print({
+            printable: "print_Crfyqr",
+            type: "html",
+            style: style, // 亦可使用引入的外部css;
+            scanStyles: false,
+          });
+          break;
+      }
+    },
+    // 打印费用确认单准备
+    feesConfirm() {
+      if (this.Collectionoptionss.length > 0) {
+        for (let item in this.Collectionoptionss) {
+          if (!this.Collectionoptionss[item].fId) {
+            return this.$message.error("请先保存!");
+          }
+        }
+        if (this.CntrTable.length > 0) {
+          let arr = [];
+          this.CntrTable.map((e) => {
+            this.cntrList.map((item) => {
+              if (item.fId == e.fCntrid) {
+                arr.push(item.fName + "X" + e.fCntrcount);
+              }
+            });
+          });
+          arr = [...new Set(arr)];
+          this.form.fCntval = arr.join(",");
+        } else {
+          this.form.fCntval = null;
+        }
+        this.allTaxAmount = 0;
+        this.allExclTax = 0;
+        this.allDrAmount = 0;
+        this.Collectionoptionss.forEach(item => {
+          // 税额
+          this.$set(item, 'taxAmount', Number(item.fAmount) / (1 + Number(Number(item.fTaxrate) / 100)))
+          item.taxAmount = item.taxAmount.toSuperFixed(2)
+          // 不含税金额
+          this.$set(item, 'exclTax', Number(item.fAmount) - Number(item.taxAmount))
+          item.exclTax = item.exclTax.toSuperFixed(2)
+          this.allTaxAmount = Number(this.allTaxAmount) + Number(item.taxAmount)
+          this.allExclTax = Number(this.allExclTax) + Number(item.exclTax)
+          this.allDrAmount = Number(this.allDrAmount) + Number(item.fAmount)
+          this.allTaxAmount = this.allTaxAmount.toSuperFixed(2)
+          this.allExclTax = this.allExclTax.toSuperFixed(2)
+          this.allDrAmount = this.allDrAmount.toSuperFixed(2)
+        })
+        this.nowTime = new Date().toLocaleDateString()
+        for (let corp in this.fMblnoOptions) {
+          if (this.form.fCorpid === this.fMblnoOptions[corp].fId) {
+            this.$set(
+              this.form,
+              "fCorpidName",
+              this.fMblnoOptions[corp].fName
+            );
+          }
+        }
+        this.print_fyqr = true;
+      } else {
+        this.$message.error("请选择需要打印的明细!");
+      }
+    },
+    feesCrConfirm() {
+      if (this.PrintingCrlist.length > 0) {
+        for (let item in this.PrintingCrlist) {
+          if (!this.PrintingCrlist[item].fId) {
+            return this.$message.error("请先保存!");
+          }
+        }
+        if (this.CntrTable.length > 0) {
+          let arr = [];
+          this.CntrTable.map((e) => {
+            this.cntrList.map((item) => {
+              if (item.fId == e.fCntrid) {
+                arr.push(item.fName + "X" + e.fCntrcount);
+              }
+            });
+          });
+          arr = [...new Set(arr)];
+          this.form.fCntval = arr.join(",");
+        } else {
+          this.form.fCntval = null;
+        }
+        this.allTaxAmount = 0;
+        this.allExclTax = 0;
+        this.allDrAmount = 0;
+        this.PrintingCrlist.forEach(item => {
+          // 税额
+          this.$set(item, 'taxAmount', Number(item.fAmount) / (1 + Number(Number(item.fTaxrate) / 100)))
+          item.taxAmount = item.taxAmount.toSuperFixed(2)
+          // 不含税金额
+          this.$set(item, 'exclTax', Number(item.fAmount) - Number(item.taxAmount))
+          item.exclTax = item.exclTax.toSuperFixed(2)
+          this.allTaxAmount = Number(this.allTaxAmount) + Number(item.taxAmount)
+          this.allExclTax = Number(this.allExclTax) + Number(item.exclTax)
+          this.allDrAmount = Number(this.allDrAmount) + Number(item.fAmount)
+          this.allTaxAmount = this.allTaxAmount.toSuperFixed(2)
+          this.allExclTax = this.allExclTax.toSuperFixed(2)
+          this.allDrAmount = this.allDrAmount.toSuperFixed(2)
+        })
+        this.nowTime = new Date().toLocaleDateString()
+        for (let corp in this.fMblnoOptions) {
+          if (this.form.fCorpid === this.fMblnoOptions[corp].fId) {
+            this.$set(
+              this.form,
+              "fCorpidName",
+              this.fMblnoOptions[corp].fName
+            );
+          }
+        }
+        this.print_Crfyqr = true;
+      } else {
+        this.$message.error("请选择需要打印的明细!");
       }
     },
   },

+ 0 - 2
src/views/Warehousing/goodsTransfer/index.vue

@@ -1071,8 +1071,6 @@ export default {
         timeInterval: null,
         fFeeStatus: null,
       };
-      this.userOptions = [];
-      this.fMblnoOptions = [];
       this.handleQuery();
     },
     showAddOrUpdate(data) {

+ 0 - 2
src/views/Warehousing/inAndOutStock/index.vue

@@ -1010,8 +1010,6 @@ export default {
         timeInterval: null,
         fFeeStatus: null,
       };
-      this.userOptions = [];
-      this.fMblnoOptions = [];
       this.handleQuery();
     },
     showAddOrUpdate(data) {

+ 4 - 0
src/views/Warehousing/inStock/AddOrUpdate.vue

@@ -1417,6 +1417,7 @@
             :company="company"
             :CntrTable="CntrTable"
             :cntrList="cntrList"
+            :goodsOptions="goodsOptions"
         ></income-money>
       </el-collapse-item>
 
@@ -1445,6 +1446,9 @@
             :fNetweight="fNetweight"
             :fCntqty="fCntqty"
             :form="form"
+            :goodsOptions="goodsOptions"
+            :CntrTable="CntrTable"
+            :cntrList="cntrList"
         ></pay-money>
       </el-collapse-item>
     </el-collapse>

+ 0 - 2
src/views/Warehousing/inStock/index.vue

@@ -1293,8 +1293,6 @@ export default {
         timeInterval: null,
         fFeeStatus: null,
       };
-      this.userOptions = [];
-      this.fMblnoOptions = [];
       this.handleQuery();
     },
     showAddOrUpdate(data) {

+ 219 - 12
src/views/Warehousing/outStock/AddOrUpdate.vue

@@ -1260,7 +1260,7 @@
               size="small"
               type="primary"
               @click="feesConfirm"
-              v-if="false"
+              v-if="isShowFeesConfirm == 0"
             >费用确认单</el-button>
             <el-button
               type="primary"
@@ -1810,10 +1810,17 @@
               type="info"
               size="small"
               @click.prevent="printCr"
+              v-if="isShowInvoice == 0"
             >请款单
             </el-button
             >
             <el-button
+              size="small"
+              type="primary"
+              @click="feesCrConfirm"
+              v-if="isShowFeesConfirm == 0"
+            >费用确认单</el-button>
+            <el-button
               type="primary"
               size="small"
               v-if="browseStatus"
@@ -3779,6 +3786,7 @@
           <div>
             <div>制单人:{{ form.createBy }}</div>
             <div>打印日期:{{ nowTime | fBsdateFormat }}</div>
+            <div>品名:{{ form.fProductName }}</div>
           </div>
         </div>
         <div class="print_table" style="display: flex">
@@ -3825,11 +3833,11 @@
         </div>
         <div>人民币汇款路径:</div>
         <div>公司名称:{{ company }}</div>
-        <div>纳税人识别号:</div>
-        <div>地址:</div>
-        <div>电话:</div>
-        <div>开户行:</div>
-        <div>银行账户:</div>
+        <div>纳税人识别号:{{ Identifier }}</div>
+        <div>地址:{{ address }}</div>
+        <div>电话:{{ phone }}</div>
+        <div>开户行:{{ bank }}</div>
+        <div>银行账户:{{ bankAccount }}</div>
       </div>
       <span slot="footer" class="dialog-footer">
         <el-button
@@ -3962,6 +3970,113 @@
         >
       </div>
     </el-dialog>
+    <!--    费用确认单(付费)-->
+    <el-dialog
+      :visible.sync="print_Crfyqr"
+      width="70%"
+      :close-on-click-modal="false"
+      :modal="false"
+    >
+      <div id="print_Crfyqr" class="print-div">
+        <div
+          class="print-title"
+          style="
+            display: flex;
+            justify-content: center;
+            font-size: 28px;
+            margin-bottom: 5px;
+          "
+        >
+          {{ company }}
+        </div>
+        <div
+          style="
+            display: flex;
+            justify-content: center;
+            margin-bottom: 5px;
+          ">
+          <div style="font-size: 24px;">费用确认</div>
+        </div>
+        <div style="display: flex;justify-content: space-between;">
+          <div>
+            <div>业务编号:{{ form.fBillno }}</div>
+            <div>客户名称:{{ form.fCorpidName }}</div>
+            <div>提单号:{{ form.fBillno }}</div>
+          </div>
+          <div>
+            <div>制单日期:{{ form.createTime | fBsdateFormat }}</div>
+            <div>仓库名称:{{ form.fWarehouseid | warehouseFormat(warehouseOptions) }}</div>
+            <div>箱型/箱量:{{ form.fCntval }}</div>
+          </div>
+          <div>
+            <div>制单人:{{ form.createBy }}</div>
+            <div>打印日期:{{ nowTime | fBsdateFormat }}</div>
+            {{form.fGoodsid}}
+            <div>品名:{{ form.fProductName }}</div>
+          </div>
+        </div>
+        <div class="print_table" style="display: flex">
+          <table
+            border="0"
+            cellspacing="0"
+            cellpadding="0"
+            style="width: 100%; line-height: 30px"
+          >
+            <tr>
+              <td>序号</td>
+              <td>费用项目</td>
+              <td>计价单位</td>
+              <td>数量</td>
+              <td>单价</td>
+              <td>是否含税</td>
+              <td>税率</td>
+              <td>不含税金额</td>
+              <td>税额</td>
+              <td>应收金额</td>
+              <td>备注</td>
+            </tr>
+            <tr v-for="(item, index) in PrintingCrlist" :key="index">
+              <td>{{ index + 1 }}</td>
+              <td>{{ item.fFeeid | fFeetFormat(fCNameOptions) }}</td>
+              <td>{{ item.fFeeUnitid | fFeetUnitFormat(fFeetUnitOptions) }}</td>
+              <td>{{ item.fQty }}</td>
+              <td>{{ item.fUnitprice }}</td>
+              <td>{{ item.fTaxrate != 0? '√': '×' }}</td>
+              <td>{{ item.fTaxrate }}</td>
+              <td>{{ item.exclTax }}</td>
+              <td>{{ item.taxAmount }}</td>
+              <td>{{ item.fAmount }}</td>
+              <td>{{ item.remark }}</td>
+            </tr>
+            <tr>
+              <td colspan="7">合计</td>
+              <td>{{ allExclTax }}</td>
+              <td>{{ allTaxAmount }}</td>
+              <td>{{ allDrAmount }}</td>
+              <td></td>
+            </tr>
+          </table>
+        </div>
+        <div>人民币汇款路径:</div>
+        <div>公司名称:{{ company }}</div>
+        <div>纳税人识别号:{{ Identifier }}</div>
+        <div>地址:{{ address }}</div>
+        <div>电话:{{ phone }}</div>
+        <div>开户行:{{ bank }}</div>
+        <div>银行账户:{{ bankAccount }}</div>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button
+          type="primary"
+          @click="
+            addprint('Crfyqrd');
+            print_Crfyqr = false;
+          "
+        >打印
+        </el-button>
+        <el-button @click="print_Crfyqr = false">取消 </el-button>
+      </span>
+    </el-dialog>
     <div style="display: flex; justify-content: flex-end; margin-top: 10px">
       <!-- 弹窗, 新增 / 修改 -->
       <add-or-update
@@ -4600,6 +4715,22 @@ export default {
       allDrAmount: 0,
       print_fyqr: false,
       activeName: 'searchList',
+      // 识别号
+      Identifier: '',
+      // 地址
+      address: '',
+      // 电话
+      phone: '',
+      // 开户行
+      bank: '',
+      // 银行账户
+      bankAccount: '',
+      // 付款信息费用确认单
+      print_Crfyqr: false,
+      // 是否启用请款单
+      isShowInvoice: null,
+      // 是否启用费用确认单
+      isShowFeesConfirm: null,
     };
   },
   computed: {
@@ -4611,12 +4742,6 @@ export default {
     },
   },
   created() {
-    const aaa = new Date(1639440000000)
-    const year = aaa.getFullYear();
-    const month = aaa.getMonth() + 1;
-    const day = aaa.getDate();
-    const timeFormat = year + "-" + month + "-" + day;
-    console.log(timeFormat)
     this.setRowList = this.tableDate;
     this.getRowList = this.tableDate;
     this.setRowList2 = this.tableDate2;
@@ -4635,6 +4760,27 @@ export default {
     this.getConfigKey("entry.printing").then((response) => {
       this.entryPrinting = response.msg;
     });
+    this.getConfigKey("taxpayer.identification.number").then((response) => {
+      this.Identifier = response.msg;
+    });
+    this.getConfigKey("print.address").then((response) => {
+      this.address = response.msg;
+    });
+    this.getConfigKey("print.phone").then((response) => {
+      this.phone = response.msg;
+    });
+    this.getConfigKey("print.bank").then((response) => {
+      this.bank = response.msg;
+    });
+    this.getConfigKey("print.bank.account").then((response) => {
+      this.bankAccount = response.msg;
+    });
+    this.getConfigKey("warehouse.show.invoice").then((response) => {
+      this.isShowInvoice = response.msg;
+    });
+    this.getConfigKey("warehouse.show.feesConfirm").then((response) => {
+      this.isShowFeesConfirm = response.msg;
+    });
     this.getDicts("data_stltype_type").then((response) => {
       this.fStltypeOptions = response.data;
     });
@@ -7527,6 +7673,14 @@ export default {
             scanStyles: false,
           });
           break;
+        case "Crfyqrd":
+          print({
+            printable: "print_Crfyqr",
+            type: "html",
+            style: style, // 亦可使用引入的外部css;
+            scanStyles: false,
+          });
+          break;
       }
     },
     cancel() {
@@ -7749,6 +7903,59 @@ export default {
         this.$message.error("请选择需要打印的明细!");
       }
     },
+    feesCrConfirm() {
+      if (this.PrintingCrlist.length > 0) {
+        for (let item in this.PrintingCrlist) {
+          if (!this.PrintingCrlist[item].fId) {
+            return this.$message.error("请先保存!");
+          }
+        }
+        if (this.CntrTable.length > 0) {
+          let arr = [];
+          this.CntrTable.map((e) => {
+            this.cntrList.map((item) => {
+              if (item.fId == e.fCntrid) {
+                arr.push(item.fName + "X" + e.fCntrcount);
+              }
+            });
+          });
+          arr = [...new Set(arr)];
+          this.form.fCntval = arr.join(",");
+        } else {
+          this.form.fCntval = null;
+        }
+        this.allTaxAmount = 0;
+        this.allExclTax = 0;
+        this.allDrAmount = 0;
+        this.PrintingCrlist.forEach(item => {
+          // 税额
+          this.$set(item, 'taxAmount', Number(item.fAmount) / (1 + Number(Number(item.fTaxrate) / 100)))
+          item.taxAmount = item.taxAmount.toSuperFixed(2)
+          // 不含税金额
+          this.$set(item, 'exclTax', Number(item.fAmount) - Number(item.taxAmount))
+          item.exclTax = item.exclTax.toSuperFixed(2)
+          this.allTaxAmount = Number(this.allTaxAmount) + Number(item.taxAmount)
+          this.allExclTax = Number(this.allExclTax) + Number(item.exclTax)
+          this.allDrAmount = Number(this.allDrAmount) + Number(item.fAmount)
+          this.allTaxAmount = this.allTaxAmount.toSuperFixed(2)
+          this.allExclTax = this.allExclTax.toSuperFixed(2)
+          this.allDrAmount = this.allDrAmount.toSuperFixed(2)
+        })
+        this.nowTime = new Date().toLocaleDateString()
+        for (let corp in this.fMblnoOptions) {
+          if (this.form.fCorpid === this.fMblnoOptions[corp].fId) {
+            this.$set(
+              this.form,
+              "fCorpidName",
+              this.fMblnoOptions[corp].fName
+            );
+          }
+        }
+        this.print_Crfyqr = true;
+      } else {
+        this.$message.error("请选择需要打印的明细!");
+      }
+    },
   },
   watch: {
     // 监听 addOrUpdateVisible 改变

+ 0 - 2
src/views/Warehousing/outStock/index.vue

@@ -1129,8 +1129,6 @@ export default {
         timeInterval: null,
         fFeeStatus: null,
       };
-      this.userOptions = [];
-      this.fMblnoOptions = [];
       this.handleQuery();
     },
     showAddOrUpdate(data) {

+ 411 - 0
src/views/Warehousing/stockTransfer/AddOrUpdate.vue

@@ -1485,6 +1485,12 @@
               >作业费协议</el-button
             >
             <el-button
+              size="small"
+              type="primary"
+              @click="feesConfirm"
+              v-if="isShowFeesConfirm == 0"
+            >费用确认单</el-button>
+            <el-button
               type="primary"
               size="small"
               v-if="browseStatus"
@@ -1875,10 +1881,17 @@
               type="info"
               size="small"
               @click.prevent="printCr"
+              v-if="isShowInvoice == 0"
             >请款单
             </el-button
             >
             <el-button
+              size="small"
+              type="primary"
+              @click="feesCrConfirm"
+              v-if="isShowFeesConfirm == 0"
+            >费用确认单</el-button>
+            <el-button
               type="primary"
               size="small"
               v-if="browseStatus"
@@ -3232,6 +3245,220 @@
         <el-button @click="print_Cr = false" size="mini">取消 </el-button>
       </span>
     </el-dialog>
+
+    <!--    费用确认单-->
+    <el-dialog
+      :visible.sync="print_fyqr"
+      width="70%"
+      :close-on-click-modal="false"
+      :modal="false"
+    >
+      <div id="print_fyqr" class="print-div">
+        <div
+          class="print-title"
+          style="
+            display: flex;
+            justify-content: center;
+            font-size: 24px;
+            margin-bottom: 5px;
+          "
+        >
+          {{ company }}
+        </div>
+        <div
+          style="
+            display: flex;
+            justify-content: center;
+            margin-bottom: 5px;
+          ">
+          <div style="font-size: 18px">费用确认</div>
+        </div>
+        <div style="display: flex;justify-content: space-between;">
+          <div>
+            <div>业务编号:{{ form.fBillno }}</div>
+            <div>客户名称:{{ form.fCorpidName }}</div>
+            <div>提单号:{{ form.fBillno }}</div>
+          </div>
+          <div>
+            <div>制单日期:{{ form.createTime | fBsdateFormat }}</div>
+            <div>仓库名称:{{ form.fWarehouseid | warehouseFormat(warehouseOptions) }}</div>
+            <div>箱型/箱量:{{ form.fCntval }}</div>
+          </div>
+          <div>
+            <div>制单人:{{ form.createBy }}</div>
+            <div>打印日期:{{ nowTime | fBsdateFormat }}</div>
+            <div>品名:{{ form.fProductName }}</div>
+          </div>
+        </div>
+        <div class="print_table" style="display: flex">
+          <table
+            border="0"
+            cellspacing="0"
+            cellpadding="0"
+            style="width: 100%; line-height: 30px"
+          >
+            <tr>
+              <td>序号</td>
+              <td>费用项目</td>
+              <td>计价单位</td>
+              <td>数量</td>
+              <td>单价</td>
+              <td>是否含税</td>
+              <td>税率</td>
+              <td>不含税金额</td>
+              <td>税额</td>
+              <td>应收金额</td>
+              <td>备注</td>
+            </tr>
+            <tr v-for="(item, index) in Collectionoptionss" :key="index">
+              <td>{{ index + 1 }}</td>
+              <td>{{ item.fFeeid | fFeetFormat(fDNameOptions) }}</td>
+              <td>{{ item.fFeeUnitid | fFeetUnitFormat(fFeetUnitOptions) }}</td>
+              <td>{{ item.fQty }}</td>
+              <td>{{ item.fUnitprice }}</td>
+              <td>{{ item.fTaxrate != 0? '√': '×' }}</td>
+              <td>{{ item.fTaxrate }}</td>
+              <td>{{ item.exclTax }}</td>
+              <td>{{ item.taxAmount }}</td>
+              <td>{{ item.fAmount }}</td>
+              <td>{{ item.remark }}</td>
+            </tr>
+            <tr>
+              <td colspan="7">合计</td>
+              <td>{{ allExclTax }}</td>
+              <td>{{ allTaxAmount }}</td>
+              <td>{{ allDrAmount }}</td>
+              <td></td>
+            </tr>
+          </table>
+        </div>
+        <div>人民币汇款路径:</div>
+        <div>公司名称:{{ company }}</div>
+        <div>纳税人识别号:{{ Identifier }}</div>
+        <div>地址:{{ address }}</div>
+        <div>电话:{{ phone }}</div>
+        <div>开户行:{{ bank }}</div>
+        <div>银行账户:{{ bankAccount }}</div>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button
+          type="primary"
+          @click="
+            addprint('fyqrd');
+            print_fyqr = false;
+          "
+        >打印
+        </el-button>
+        <el-button @click="print_fyqr = false">取消 </el-button>
+      </span>
+    </el-dialog>
+    <!--    费用确认单(付费)-->
+    <el-dialog
+      :visible.sync="print_Crfyqr"
+      width="70%"
+      :close-on-click-modal="false"
+      :modal="false"
+    >
+      <div id="print_Crfyqr" class="print-div">
+        <div
+          class="print-title"
+          style="
+            display: flex;
+            justify-content: center;
+            font-size: 28px;
+            margin-bottom: 5px;
+          "
+        >
+          {{ company }}
+        </div>
+        <div
+          style="
+            display: flex;
+            justify-content: center;
+            margin-bottom: 5px;
+          ">
+          <div style="font-size: 24px;">费用确认</div>
+        </div>
+        <div style="display: flex;justify-content: space-between;">
+          <div>
+            <div>业务编号:{{ form.fBillno }}</div>
+            <div>客户名称:{{ form.fCorpidName }}</div>
+            <div>提单号:{{ form.fBillno }}</div>
+          </div>
+          <div>
+            <div>制单日期:{{ form.createTime | fBsdateFormat }}</div>
+            <div>仓库名称:{{ form.fWarehouseid | warehouseFormat(warehouseOptions) }}</div>
+            <div>箱型/箱量:{{ form.fCntval }}</div>
+          </div>
+          <div>
+            <div>制单人:{{ form.createBy }}</div>
+            <div>打印日期:{{ nowTime | fBsdateFormat }}</div>
+            {{form.fGoodsid}}
+            <div>品名:{{ form.fProductName }}</div>
+          </div>
+        </div>
+        <div class="print_table" style="display: flex">
+          <table
+            border="0"
+            cellspacing="0"
+            cellpadding="0"
+            style="width: 100%; line-height: 30px"
+          >
+            <tr>
+              <td>序号</td>
+              <td>费用项目</td>
+              <td>计价单位</td>
+              <td>数量</td>
+              <td>单价</td>
+              <td>是否含税</td>
+              <td>税率</td>
+              <td>不含税金额</td>
+              <td>税额</td>
+              <td>应收金额</td>
+              <td>备注</td>
+            </tr>
+            <tr v-for="(item, index) in PrintingCrlist" :key="index">
+              <td>{{ index + 1 }}</td>
+              <td>{{ item.fFeeid | fFeetFormat(fCNameOptions) }}</td>
+              <td>{{ item.fFeeUnitid | fFeetUnitFormat(fFeetUnitOptions) }}</td>
+              <td>{{ item.fQty }}</td>
+              <td>{{ item.fUnitprice }}</td>
+              <td>{{ item.fTaxrate != 0? '√': '×' }}</td>
+              <td>{{ item.fTaxrate }}</td>
+              <td>{{ item.exclTax }}</td>
+              <td>{{ item.taxAmount }}</td>
+              <td>{{ item.fAmount }}</td>
+              <td>{{ item.remark }}</td>
+            </tr>
+            <tr>
+              <td colspan="7">合计</td>
+              <td>{{ allExclTax }}</td>
+              <td>{{ allTaxAmount }}</td>
+              <td>{{ allDrAmount }}</td>
+              <td></td>
+            </tr>
+          </table>
+        </div>
+        <div>人民币汇款路径:</div>
+        <div>公司名称:{{ company }}</div>
+        <div>纳税人识别号:{{ Identifier }}</div>
+        <div>地址:{{ address }}</div>
+        <div>电话:{{ phone }}</div>
+        <div>开户行:{{ bank }}</div>
+        <div>银行账户:{{ bankAccount }}</div>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button
+          type="primary"
+          @click="
+            addprint('Crfyqrd');
+            print_Crfyqr = false;
+          "
+        >打印
+        </el-button>
+        <el-button @click="print_Crfyqr = false">取消 </el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 
@@ -3762,6 +3989,30 @@ export default {
       allCrfQty: 0,
       // Cr打印弹窗是否开启
       print_Cr: false,
+      // 税额总数
+      allTaxAmount: 0,
+      // 不含税金额总数
+      allExclTax: 0,
+      // 收款金额合计
+      allDrAmount: 0,
+      print_fyqr: false,
+      activeName: 'searchList',
+      // 识别号
+      Identifier: '',
+      // 地址
+      address: '',
+      // 电话
+      phone: '',
+      // 开户行
+      bank: '',
+      // 银行账户
+      bankAccount: '',
+      nowTime: null,
+      print_Crfyqr: false,
+      // 是否启用请款单
+      isShowInvoice: null,
+      // 是否启用费用确认单
+      isShowFeesConfirm: null,
     };
   },
   created() {
@@ -3806,6 +4057,27 @@ export default {
         this.detailsHidden2 = true;
       }
     });
+    this.getConfigKey("taxpayer.identification.number").then((response) => {
+      this.Identifier = response.msg;
+    });
+    this.getConfigKey("print.address").then((response) => {
+      this.address = response.msg;
+    });
+    this.getConfigKey("print.phone").then((response) => {
+      this.phone = response.msg;
+    });
+    this.getConfigKey("print.bank").then((response) => {
+      this.bank = response.msg;
+    });
+    this.getConfigKey("print.bank.account").then((response) => {
+      this.bankAccount = response.msg;
+    });
+    this.getConfigKey("warehouse.show.invoice").then((response) => {
+      this.isShowInvoice = response.msg;
+    });
+    this.getConfigKey("warehouse.show.feesConfirm").then((response) => {
+      this.isShowFeesConfirm = response.msg;
+    });
     listWarehousesss({ fStatus: 0, delFlag: 0 }).then((response) => {
       this.warehouseOptions = response.rows;
     });
@@ -3900,6 +4172,24 @@ export default {
       });
       return name;
     },
+    warehouseFormat(row, warehouseOptions) {
+      let warehouse;
+      warehouseOptions.map((e) => {
+        if (row == e.fId) {
+          warehouse = e.fName;
+        }
+      });
+      return warehouse;
+    },
+    fFeetUnitFormat(row, fFeetUnitOptions) {
+      let name;
+      fFeetUnitOptions.map((e) => {
+        if (row == e.dictValue) {
+          name = e.dictLabel;
+        }
+      });
+      return name;
+    },
   },
   methods: {
     init() {
@@ -5900,6 +6190,20 @@ export default {
           style: style, // 亦可使用引入的外部css;
           scanStyles: false,
         });
+      }else if (status == 'fyqrd') {
+        print({
+          printable: "print_fyqr",
+          type: "html",
+          style: style, // 亦可使用引入的外部css;
+          scanStyles: false,
+        });
+      }else if (status == 'Crfyqrd') {
+        print({
+          printable: "print_Crfyqr",
+          type: "html",
+          style: style, // 亦可使用引入的外部css;
+          scanStyles: false,
+        });
       }
       else{
         print({
@@ -6019,6 +6323,113 @@ export default {
         this.$set(this.form, 'fTel', res.data.fTel)
       })
     },
+    // 打印费用确认单准备
+    feesConfirm() {
+      if (this.Collectionoptionss.length > 0) {
+        for (let item in this.Collectionoptionss) {
+          if (!this.Collectionoptionss[item].fId) {
+            return this.$message.error("请先保存!");
+          }
+        }
+        if (this.CntrTable.length > 0) {
+          let arr = [];
+          this.CntrTable.map((e) => {
+            this.cntrList.map((item) => {
+              if (item.fId == e.fCntrid) {
+                arr.push(item.fName + "X" + e.fCntrcount);
+              }
+            });
+          });
+          arr = [...new Set(arr)];
+          this.form.fCntval = arr.join(",");
+        } else {
+          this.form.fCntval = null;
+        }
+        this.allTaxAmount = 0;
+        this.allExclTax = 0;
+        this.allDrAmount = 0;
+        this.Collectionoptionss.forEach(item => {
+          // 税额
+          this.$set(item, 'taxAmount', Number(item.fAmount) / (1 + Number(Number(item.fTaxrate) / 100)))
+          item.taxAmount = item.taxAmount.toSuperFixed(2)
+          // 不含税金额
+          this.$set(item, 'exclTax', Number(item.fAmount) - Number(item.taxAmount))
+          item.exclTax = item.exclTax.toSuperFixed(2)
+          this.allTaxAmount = Number(this.allTaxAmount) + Number(item.taxAmount)
+          this.allExclTax = Number(this.allExclTax) + Number(item.exclTax)
+          this.allDrAmount = Number(this.allDrAmount) + Number(item.fAmount)
+          this.allTaxAmount = this.allTaxAmount.toSuperFixed(2)
+          this.allExclTax = this.allExclTax.toSuperFixed(2)
+          this.allDrAmount = this.allDrAmount.toSuperFixed(2)
+        })
+        this.nowTime = new Date().toLocaleDateString()
+        for (let corp in this.fMblnoOptions) {
+          if (this.form.fCorpid === this.fMblnoOptions[corp].fId) {
+            this.$set(
+              this.form,
+              "fCorpidName",
+              this.fMblnoOptions[corp].fName
+            );
+          }
+        }
+        this.print_fyqr = true;
+      } else {
+        this.$message.error("请选择需要打印的明细!");
+      }
+    },
+    feesCrConfirm() {
+      if (this.PrintingCrlist.length > 0) {
+        for (let item in this.PrintingCrlist) {
+          if (!this.PrintingCrlist[item].fId) {
+            return this.$message.error("请先保存!");
+          }
+        }
+        if (this.CntrTable.length > 0) {
+          let arr = [];
+          this.CntrTable.map((e) => {
+            this.cntrList.map((item) => {
+              if (item.fId == e.fCntrid) {
+                arr.push(item.fName + "X" + e.fCntrcount);
+              }
+            });
+          });
+          arr = [...new Set(arr)];
+          this.form.fCntval = arr.join(",");
+        } else {
+          this.form.fCntval = null;
+        }
+        this.allTaxAmount = 0;
+        this.allExclTax = 0;
+        this.allDrAmount = 0;
+        this.PrintingCrlist.forEach(item => {
+          // 税额
+          this.$set(item, 'taxAmount', Number(item.fAmount) / (1 + Number(Number(item.fTaxrate) / 100)))
+          item.taxAmount = item.taxAmount.toSuperFixed(2)
+          // 不含税金额
+          this.$set(item, 'exclTax', Number(item.fAmount) - Number(item.taxAmount))
+          item.exclTax = item.exclTax.toSuperFixed(2)
+          this.allTaxAmount = Number(this.allTaxAmount) + Number(item.taxAmount)
+          this.allExclTax = Number(this.allExclTax) + Number(item.exclTax)
+          this.allDrAmount = Number(this.allDrAmount) + Number(item.fAmount)
+          this.allTaxAmount = this.allTaxAmount.toSuperFixed(2)
+          this.allExclTax = this.allExclTax.toSuperFixed(2)
+          this.allDrAmount = this.allDrAmount.toSuperFixed(2)
+        })
+        this.nowTime = new Date().toLocaleDateString()
+        for (let corp in this.fMblnoOptions) {
+          if (this.form.fCorpid === this.fMblnoOptions[corp].fId) {
+            this.$set(
+              this.form,
+              "fCorpidName",
+              this.fMblnoOptions[corp].fName
+            );
+          }
+        }
+        this.print_Crfyqr = true;
+      } else {
+        this.$message.error("请选择需要打印的明细!");
+      }
+    },
   },
   watch: {
     // 监听 addOrUpdateVisible 改变

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

@@ -1086,8 +1086,6 @@ export default {
         timeInterval: null,
         fFeeStatus:null,
       };
-      this.userOptions = [];
-      this.fMblnoOptions = [];
       this.handleQuery();
     },
     showAddOrUpdate(data) {