فهرست منبع

1.买箱 租箱 退租 代理箱 费用模块 新加撤销请核功能
2.箱管 费用模块 申请修改 修改描述
3.箱池动态 自有箱 可用大于场地盘存 标红
4.箱管 所有业务费用模块新加打印报表模块(付费没有设计报表暂时隐藏按钮)
5.客户订舱 新加单证中心 (已隐藏暂不显示)
6.付费申请 发票申请 提交前 判断币别提示
7.海运进出口 OW 箱管 费用币别 如果是本币 汇率不允许编辑

qukaidi 1 هفته پیش
والد
کامیت
7b5b393eba

+ 58 - 5
src/views/boxManagement/agentBox/detailsPage.vue

@@ -420,6 +420,14 @@
                 <el-button type="primary" plain size="small" :disabled="selectionfeecList.length == 0" @click="allClick('费用申请')"
                   >请核费用</el-button
                 >
+                <el-button
+                  type="danger"
+                  plain
+                  size="small"
+                  :disabled="selectionfeecList.length == 0"
+                  @click="allClick('C撤销请核')"
+                  >撤销请核</el-button
+                >
                 <el-button type="primary" plain size="small" :disabled="selectionfeecList.length != 1" @click="allClick('C申请修改')"
                   >申请修改</el-button
                 >
@@ -547,6 +555,7 @@
                   :controls="false"
                   placeholder="请输入 汇率"
                   size="small"
+                  :disabled="row.curCode==getLocalCurrency()"
                   style="width: 100%;"
                 ></el-input-number>
                 <span v-else>{{ row.exrate }}</span>
@@ -620,10 +629,11 @@
       :id="form.id"
       :itemIds="itemCIds"
       ref="printC"
-      businessValue="MYDL"
+      businessValue="OW-N"
       classifyCode="费用"
       groupCode="应付"
       :selecList="selectionfeecList"
+      :type="true"
     ></business-reports>
     <reports :id="form.id" :assemblyForm="form" businessValue="MYDL" ref="report"></reports>
     <!--审核弹窗-->
@@ -737,6 +747,7 @@ import {
   boxRemove,
   copyAgent,
   pleaseVerifyCost,
+  revokeCheckPleaseVerifyCost,
   getAccurate,
   finstlbillsGetAccBillIdList,
   fininvoicesGetAccBillIdList
@@ -2764,6 +2775,48 @@ export default {
             });
         });
       }
+       if (name == "C撤销请核") {
+        for (let row of this.selectionfeecList) {
+          if (!row.id) {
+            return this.$message.error("请保存费用明细");
+          }
+          if (row.auditStatus == 0) {
+            return this.$message.error("未申请费用,不允许撤销");
+          }
+          if (row.auditStatus > 2) {
+            return this.$message.error("费用已经审核通过,请使用申请修改和删除功能!");
+          }
+        }
+        this.$confirm("确定撤销请核?", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(() => {
+          let obj = {};
+          obj = {
+            srcId: this.form.id,
+            srcType: this.form.type,
+            feeCenterList: this.selectionfeecList,
+            url: "/boxManagement/agentBox/index",
+            pageStatus: "",
+            pageLabel: "代理箱"
+          };
+          const loading = this.$loading({
+            lock: true,
+            text: "加载中",
+            spinner: "el-icon-loading",
+            background: "rgba(255,255,255,0.7)"
+          });
+          revokeCheckPleaseVerifyCost(obj)
+            .then(res => {
+              this.$message.success("操作成功");
+              this.getDetail(this.form.id);
+            })
+            .finally(() => {
+              loading.close();
+            });
+        });
+      }
       if (name == "C申请修改") {
         for (let row of this.selectionfeecList) {
           if (!row.id) {
@@ -2779,7 +2832,7 @@ export default {
             return this.$message.error("请选择未开票的费用?");
           }
           if (Number(row.stlTtlAmount) > 0) {
-            return this.$message.error("请选择未结算的费用");
+            return this.$message.error("请选择未结算的费用");
           }
           this.$refs.feeModify.openDialog(row, "fix");
         }
@@ -2799,7 +2852,7 @@ export default {
             return this.$message.error("请选择未开票的费用?");
           }
           if (Number(row.stlTtlAmount) > 0) {
-            return this.$message.error("请选择未结算的费用");
+            return this.$message.error("请选择未结算的费用");
           }
           this.$refs.feeModify.openDialog(row, "del");
         }
@@ -2954,13 +3007,13 @@ export default {
     },
     rowStyle({ row, column, rowIndex }) {
       //已结算金额
-      if (Number(row.stlTtlAmount) != 0) {
+      if (Number(row.stlTtlAmount?row.stlTtlAmount:0) != 0) {
         return {
           color: "#0000FF"
         };
       }
       //发票金额和付费申请金额
-      if (Number(row.appliedAmount) != 0 || Number(row.appliedInvoiceAmount) != 0) {
+      if (Number(row.appliedAmount?row.appliedAmount:0) != 0 || Number(row.appliedInvoiceAmount?row.appliedInvoiceAmount:0) != 0) {
         return {
           color: "#FFC300"
         };

+ 13 - 9
src/views/boxManagement/boxAdjustment/detailsPage.vue

@@ -3,7 +3,7 @@
     <div class="customer-head">
       <div class="customer-back">
         <el-button type="danger" style="border: none;background: none;color: red" icon="el-icon-arrow-left" @click="goBack()">返回列表 </el-button>
-      <el-button v-if="form.id && pageIds.length" type="text" @click="lastPage">上一票</el-button>
+        <el-button v-if="form.id && pageIds.length" type="text" @click="lastPage">上一票</el-button>
         <el-button v-if="form.id && pageIds.length" type="text" @click="nextPage">下一票</el-button>
       </div>
       <div class="add-customer-btn">
@@ -273,7 +273,9 @@
                   @click="allClick('批量删除')"
                   >批量删除</el-button
                 >
-                <el-button type="success" size="small" :disabled="!form.id||editDisabled|| form.buxStaus == '已确认'" @click="allClick('导入')">导入</el-button>
+                <el-button type="success" size="small" :disabled="!form.id || editDisabled || form.buxStaus == '已确认'" @click="allClick('导入')"
+                  >导入</el-button
+                >
                 <el-button size="small" style="margin-right: 8px" :disabled="!form.id || true" @click="$refs.print.openDialog()">打印报表 </el-button>
               </template>
               <template slot="indexHeader" slot-scope="{ row, index }">
@@ -550,6 +552,7 @@
                   :controls="false"
                   placeholder="请输入 汇率"
                   size="small"
+                  :disabled="row.curCode==getLocalCurrency()"
                   style="width: 100%;"
                 ></el-input-number>
                 <span v-else>{{ row.exrate }}</span>
@@ -623,10 +626,11 @@
       :id="form.id"
       :itemIds="itemCIds"
       ref="printC"
-      businessValue="MYDL"
+      businessValue="OW-N"
       classifyCode="费用"
       groupCode="应付"
       :selecList="selectionfeecList"
+      :type="true"
     ></business-reports>
     <reports :id="form.id" :assemblyForm="form" businessValue="MYDL" ref="report"></reports>
     <!--审核弹窗-->
@@ -971,7 +975,7 @@ export default {
           {
             label: "放箱号",
             prop: "containerNumber",
-            disabled: false,
+            disabled: false
           },
           {
             label: "船公司/车队",
@@ -2584,7 +2588,7 @@ export default {
             return this.$message.error("请选择未开票的费用?");
           }
           if (Number(row.stlTtlAmount) > 0) {
-            return this.$message.error("请选择未结算的费用");
+            return this.$message.error("请选择未结算的费用");
           }
           this.$refs.feeModify.openDialog(row, "fix");
         }
@@ -2604,7 +2608,7 @@ export default {
             return this.$message.error("请选择未开票的费用?");
           }
           if (Number(row.stlTtlAmount) > 0) {
-            return this.$message.error("请选择未结算的费用");
+            return this.$message.error("请选择未结算的费用");
           }
           this.$refs.feeModify.openDialog(row, "del");
         }
@@ -2632,7 +2636,7 @@ export default {
           //     return this.$message.error("请完善箱型箱量");
           //   }
           // }
-          if(!this.form.containerNumber){
+          if (!this.form.containerNumber) {
             return this.$message.error("请点击放箱号的🔍选择放箱号");
           }
           for (let row of this.form.tradingBoxItemsList) {
@@ -2795,13 +2799,13 @@ export default {
     },
     rowStyle({ row, column, rowIndex }) {
       //已结算金额
-      if (Number(row.stlTtlAmount) != 0) {
+      if (Number(row.stlTtlAmount?row.stlTtlAmount:0) != 0) {
         return {
           color: "#0000FF"
         };
       }
       //发票金额和付费申请金额
-      if (Number(row.appliedAmount) != 0 || Number(row.appliedInvoiceAmount) != 0) {
+      if (Number(row.appliedAmount?row.appliedAmount:0) != 0 || Number(row.appliedInvoiceAmount?row.appliedInvoiceAmount:0) != 0) {
         return {
           color: "#FFC300"
         };

+ 8 - 6
src/views/boxManagement/boxCost/detailsPage.vue

@@ -454,6 +454,7 @@
                   :controls="false"
                   placeholder="请输入 汇率"
                   size="small"
+                  :disabled="row.curCode==getLocalCurrency()"
                   style="width: 100%;"
                 ></el-input-number>
                 <span v-else>{{ row.exrate }}</span>
@@ -683,6 +684,7 @@
                   :controls="false"
                   placeholder="请输入 汇率"
                   size="small"
+                  :disabled="row.curCode==getLocalCurrency()"
                   style="width: 100%;"
                 ></el-input-number>
                 <span v-else>{{ row.exrate }}</span>
@@ -3689,7 +3691,7 @@ export default {
             return this.$message.error("请选择未开票的费用?");
           }
           if (Number(row.stlTtlAmount) > 0) {
-            return this.$message.error("请选择未结算的费用");
+            return this.$message.error("请选择未结算的费用");
           }
           this.$refs.feeModify.openDialog(row, "fix");
         }
@@ -3709,7 +3711,7 @@ export default {
             return this.$message.error("请选择未开票的费用?");
           }
           if (Number(row.stlTtlAmount) > 0) {
-            return this.$message.error("请选择未结算的费用");
+            return this.$message.error("请选择未结算的费用");
           }
           this.$refs.feeModify.openDialog(row, "del");
         }
@@ -3822,7 +3824,7 @@ export default {
             return this.$message.error("请选择未开票的费用?");
           }
           if (Number(row.stlTtlAmount) > 0) {
-            return this.$message.error("请选择未结算的费用");
+            return this.$message.error("请选择未结算的费用");
           }
           this.$refs.feeModify.openDialog(row, "fix");
         }
@@ -3842,7 +3844,7 @@ export default {
             return this.$message.error("请选择未开票的费用?");
           }
           if (Number(row.stlTtlAmount) > 0) {
-            return this.$message.error("请选择未结算的费用");
+            return this.$message.error("请选择未结算的费用");
           }
           this.$refs.feeModify.openDialog(row, "del");
         }
@@ -4043,13 +4045,13 @@ export default {
     },
     rowStyle({ row, column, rowIndex }) {
       //已结算金额
-      if (Number(row.stlTtlAmount) != 0) {
+      if (Number(row.stlTtlAmount?row.stlTtlAmount:0) != 0) {
         return {
           color: "#0000FF"
         };
       }
       //发票金额和付费申请金额
-      if (Number(row.appliedAmount) != 0 || Number(row.appliedInvoiceAmount) != 0) {
+      if (Number(row.appliedAmount?row.appliedAmount:0) != 0 || Number(row.appliedInvoiceAmount?row.appliedInvoiceAmount:0) != 0) {
         return {
           color: "#FFC300"
         };

+ 5 - 4
src/views/boxManagement/boxExit/detailsPage.vue

@@ -543,6 +543,7 @@
                   :controls="false"
                   placeholder="请输入 汇率"
                   size="small"
+                  :disabled="row.curCode==getLocalCurrency()"
                   style="width: 100%;"
                 ></el-input-number>
                 <span v-else>{{ row.exrate }}</span>
@@ -2493,7 +2494,7 @@ export default {
             return this.$message.error("请选择未开票的费用?");
           }
           if (Number(row.stlTtlAmount) > 0) {
-            return this.$message.error("请选择未结算的费用");
+            return this.$message.error("请选择未结算的费用");
           }
           this.$refs.feeModify.openDialog(row, "fix");
         }
@@ -2513,7 +2514,7 @@ export default {
             return this.$message.error("请选择未开票的费用?");
           }
           if (Number(row.stlTtlAmount) > 0) {
-            return this.$message.error("请选择未结算的费用");
+            return this.$message.error("请选择未结算的费用");
           }
           this.$refs.feeModify.openDialog(row, "del");
         }
@@ -2701,13 +2702,13 @@ export default {
     },
     rowStyle({ row, column, rowIndex }) {
       //已结算金额
-      if (Number(row.stlTtlAmount) != 0) {
+      if (Number(row.stlTtlAmount?row.stlTtlAmount:0) != 0) {
         return {
           color: "#0000FF"
         };
       }
       //发票金额和付费申请金额
-      if (Number(row.appliedAmount) != 0 || Number(row.appliedInvoiceAmount) != 0) {
+      if (Number(row.appliedAmount?row.appliedAmount:0) != 0 || Number(row.appliedInvoiceAmount?row.appliedInvoiceAmount:0) != 0) {
         return {
           color: "#FFC300"
         };

+ 21 - 10
src/views/boxManagement/boxPoolDynamics/index.vue

@@ -53,6 +53,7 @@
             @size-change="sizeChange"
             @refresh-change="refreshChange"
             @on-load="onLoad"
+            :cell-style="cellStyle"
           >
             <template slot="menuLeft">
               <el-button type="warning" size="small" @click="outExport">导 出</el-button>
@@ -76,6 +77,7 @@
             @size-change="sizeChange2"
             @refresh-change="refreshChange2"
             @on-load="onLoad2"
+            :cell-style="cellStyle"
             @resetColumn="resetColumn('crud2', 'option2', 'optionBack2', 466)"
             @saveColumn="saveColumn('crud2', 'option2', 'optionBack2', 466)"
           >
@@ -227,7 +229,7 @@ export default {
         viewBtn: false,
         editBtn: false,
         delBtn: false,
-        columnBtn:false,
+        columnBtn: false,
         searchIcon: true,
         align: "center",
         searchIndex: 3,
@@ -298,7 +300,7 @@ export default {
             props: {
               label: "cnName",
               value: "id",
-              desc: "code",
+              desc: "code"
             }
           },
           {
@@ -322,7 +324,7 @@ export default {
             dicUrl: "/api/blade-los/bcorps/listAll?status=0&corpTypeName=场站",
             props: {
               label: "shortName",
-              value: "id",
+              value: "id"
             }
           },
           {
@@ -471,13 +473,13 @@ export default {
             label: "港口",
             prop: "polName",
             width: 150,
-            overHidden: true,
+            overHidden: true
           },
           {
             label: "港口",
             prop: "polId",
             overHidden: true,
-            hide:true,
+            hide: true,
             search: true,
             type: "select",
             filterable: true,
@@ -485,7 +487,7 @@ export default {
             props: {
               label: "cnName",
               value: "id",
-              desc: "code",
+              desc: "code"
             }
           },
           {
@@ -499,7 +501,7 @@ export default {
             dicUrl: "/api/blade-los/bcorps/listAll?status=0&corpTypeName=场站",
             props: {
               label: "shortName",
-              value: "id",
+              value: "id"
             }
           },
           {
@@ -532,14 +534,14 @@ export default {
             label: "目的港",
             prop: "podName",
             width: 150,
-            overHidden: true,
+            overHidden: true
           },
           {
             label: "目的港",
             prop: "podId",
             width: 150,
             overHidden: true,
-            hide:true,
+            hide: true,
             search: true,
             type: "select",
             filterable: true,
@@ -548,7 +550,7 @@ export default {
             props: {
               label: "cnName",
               value: "id",
-              desc: "code",
+              desc: "code"
             }
           },
           {
@@ -1050,6 +1052,15 @@ export default {
           this.loading3 = false;
         });
     },
+    cellStyle({ row, column, rowIndex, columnIndex }) {
+      if (row.busType == "自有箱") {
+        if (row.total < row.remainingTotal) {
+          return {
+            color: "#F56C6C"
+          };
+        }
+      }
+    },
     // 详情的返回列表
     goBack() {
       // 初始化数据

+ 60 - 6
src/views/boxManagement/buyContainer/detailsPage.vue

@@ -3,7 +3,7 @@
     <div class="customer-head">
       <div class="customer-back">
         <el-button type="danger" style="border: none;background: none;color: red" icon="el-icon-arrow-left" @click="goBack()">返回列表 </el-button>
-       <el-button v-if="form.id && pageIds.length" type="text" @click="lastPage">上一票</el-button>
+        <el-button v-if="form.id && pageIds.length" type="text" @click="lastPage">上一票</el-button>
         <el-button v-if="form.id && pageIds.length" type="text" @click="nextPage">下一票</el-button>
       </div>
       <div class="add-customer-btn">
@@ -305,6 +305,14 @@
                 <el-button type="primary" plain size="small" :disabled="selectionfeecList.length == 0" @click="allClick('费用申请')"
                   >请核费用</el-button
                 >
+                <el-button
+                  type="danger"
+                  plain
+                  size="small"
+                  :disabled="selectionfeecList.length == 0"
+                  @click="allClick('C撤销请核')"
+                  >撤销请核</el-button
+                >
                 <el-button type="primary" plain size="small" :disabled="selectionfeecList.length != 1" @click="allClick('C申请修改')"
                   >申请修改</el-button
                 >
@@ -314,6 +322,7 @@
                 <el-button type="danger" plain size="small" :disabled="selectionfeecList.length != 1" @click="allClick('C取消申请')"
                   >取消申请</el-button
                 >
+                  <!-- <el-button type="primary" plain size="small" @click="$refs.printC.openDialog()">打印账单</el-button> -->
               </template>
               <template slot="indexHeader" slot-scope="{ row, index }">
                 <el-button type="primary" size="mini" icon="el-icon-plus" :disabled="false" circle @click="feecAddRow()"> </el-button>
@@ -431,6 +440,7 @@
                   :controls="false"
                   placeholder="请输入 汇率"
                   size="small"
+                  :disabled="row.curCode==getLocalCurrency()"
                   style="width: 100%;"
                 ></el-input-number>
                 <span v-else>{{ row.exrate }}</span>
@@ -504,10 +514,11 @@
       :id="form.id"
       :itemIds="itemCIds"
       ref="printC"
-      businessValue="MYDL"
+      businessValue="OW-N"
       classifyCode="费用"
       groupCode="应付"
       :selecList="selectionfeecList"
+      :type="true"
     ></business-reports>
     <reports :id="form.id" :assemblyForm="form" businessValue="MYDL" ref="report"></reports>
     <!--审核弹窗-->
@@ -619,6 +630,7 @@ import {
   revokEnable,
   copyAgent,
   pleaseVerifyCost,
+  revokeCheckPleaseVerifyCost,
   getAccurate,
   finstlbillsGetAccBillIdList,
   fininvoicesGetAccBillIdList
@@ -2395,6 +2407,48 @@ export default {
             });
         });
       }
+      if (name == "C撤销请核") {
+        for (let row of this.selectionfeecList) {
+          if (!row.id) {
+            return this.$message.error("请保存费用明细");
+          }
+          if (row.auditStatus == 0) {
+            return this.$message.error("未申请费用,不允许撤销");
+          }
+          if (row.auditStatus > 2) {
+            return this.$message.error("费用已经审核通过,请使用申请修改和删除功能!");
+          }
+        }
+        this.$confirm("确定撤销请核?", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(() => {
+          let obj = {};
+          obj = {
+            srcId: this.form.id,
+            srcType: this.form.type,
+            feeCenterList: this.selectionfeecList,
+            url: "/boxManagement/buyContainer/index",
+            pageStatus: "",
+            pageLabel: "买箱"
+          };
+          const loading = this.$loading({
+            lock: true,
+            text: "加载中",
+            spinner: "el-icon-loading",
+            background: "rgba(255,255,255,0.7)"
+          });
+          revokeCheckPleaseVerifyCost(obj)
+            .then(res => {
+              this.$message.success("操作成功");
+              this.getDetail(this.form.id);
+            })
+            .finally(() => {
+              loading.close();
+            });
+        });
+      }
       if (name == "C申请修改") {
         for (let row of this.selectionfeecList) {
           if (!row.id) {
@@ -2410,7 +2464,7 @@ export default {
             return this.$message.error("请选择未开票的费用?");
           }
           if (Number(row.stlTtlAmount) > 0) {
-            return this.$message.error("请选择未结算的费用");
+            return this.$message.error("请选择未结算的费用");
           }
           this.$refs.feeModify.openDialog(row, "fix");
         }
@@ -2430,7 +2484,7 @@ export default {
             return this.$message.error("请选择未开票的费用?");
           }
           if (Number(row.stlTtlAmount) > 0) {
-            return this.$message.error("请选择未结算的费用");
+            return this.$message.error("请选择未结算的费用");
           }
           this.$refs.feeModify.openDialog(row, "del");
         }
@@ -2578,13 +2632,13 @@ export default {
     },
     rowStyle({ row, column, rowIndex }) {
       //已结算金额
-      if (Number(row.stlTtlAmount) != 0) {
+      if (Number(row.stlTtlAmount?row.stlTtlAmount:0) != 0) {
         return {
           color: "#0000FF"
         };
       }
       //发票金额和付费申请金额
-      if (Number(row.appliedAmount) != 0 || Number(row.appliedInvoiceAmount) != 0) {
+      if (Number(row.appliedAmount?row.appliedAmount:0) != 0 || Number(row.appliedInvoiceAmount?row.appliedInvoiceAmount:0) != 0) {
         return {
           color: "#FFC300"
         };

+ 1 - 1
src/views/boxManagement/containerNumber/detailsPage.vue

@@ -291,7 +291,7 @@
             <el-button type="danger" plain size="small" :disabled="editDisabled || selectionList.length == 0||form.whetherManuallyCreate==1" @click="allClick('批量删除')"
               >批量删除</el-button> -->
             <el-button type="success" size="small" :disabled="!form.id" @click="allClick('导出')">导出</el-button>
-            <el-button type="info" size="small" @click="allClick('选定更改箱东')" :disabled="editDisabled || selectionList.length == 0"
+            <el-button v-if="form.boxClass != 'OW(拿)' && form.id" type="info" size="small" @click="allClick('选定更改箱东')" :disabled="editDisabled || selectionList.length == 0"
               >选定更改箱东</el-button
             >
             <el-button type="success" size="small" @click="allClick('选定更改放箱号')" :disabled="editDisabled || selectionList.length == 0"

+ 53 - 5
src/views/boxManagement/moveOut/detailsPage.vue

@@ -331,6 +331,9 @@
                 <el-button type="primary" plain size="small" :disabled="selectionfeecList.length == 0" @click="allClick('费用申请')"
                   >请核费用</el-button
                 >
+                <el-button type="danger" plain size="small" :disabled="selectionfeecList.length == 0" @click="allClick('C撤销请核')"
+                  >撤销请核</el-button
+                >
                 <el-button type="primary" plain size="small" :disabled="selectionfeecList.length != 1" @click="allClick('C申请修改')"
                   >申请修改</el-button
                 >
@@ -459,6 +462,7 @@
                   :controls="false"
                   placeholder="请输入 汇率"
                   size="small"
+                  :disabled="row.curCode==getLocalCurrency()"
                   style="width: 100%;"
                 ></el-input-number>
                 <span v-else>{{ row.exrate }}</span>
@@ -532,10 +536,11 @@
       :id="form.id"
       :itemIds="itemCIds"
       ref="printC"
-      businessValue="MYDL"
+      businessValue="OW-N"
       classifyCode="费用"
       groupCode="应付"
       :selecList="selectionfeecList"
+      :type="true"
     ></business-reports>
     <reports :id="form.id" :assemblyForm="form" businessValue="MYDL" ref="report"></reports>
     <!--审核弹窗-->
@@ -594,6 +599,7 @@ import {
   revokeRentCalculation,
   copyAgent,
   pleaseVerifyCost,
+  revokeCheckPleaseVerifyCost,
   getAccurate,
   finstlbillsGetAccBillIdList,
   fininvoicesGetAccBillIdList
@@ -2120,6 +2126,48 @@ export default {
             });
         });
       }
+      if (name == "C撤销请核") {
+        for (let row of this.selectionfeecList) {
+          if (!row.id) {
+            return this.$message.error("请保存费用明细");
+          }
+          if (row.auditStatus == 0) {
+            return this.$message.error("未申请费用,不允许撤销");
+          }
+          if (row.auditStatus > 2) {
+            return this.$message.error("费用已经审核通过,请使用申请修改和删除功能!");
+          }
+        }
+        this.$confirm("确定撤销请核?", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(() => {
+          let obj = {};
+          obj = {
+            srcId: this.form.id,
+            srcType: this.form.type,
+            feeCenterList: this.selectionfeecList,
+            url: "/boxManagement/moveOut/index",
+            pageStatus: "",
+            pageLabel: "退租"
+          };
+          const loading = this.$loading({
+            lock: true,
+            text: "加载中",
+            spinner: "el-icon-loading",
+            background: "rgba(255,255,255,0.7)"
+          });
+          revokeCheckPleaseVerifyCost(obj)
+            .then(res => {
+              this.$message.success("操作成功");
+              this.getDetail(this.form.id);
+            })
+            .finally(() => {
+              loading.close();
+            });
+        });
+      }
       if (name == "C申请修改") {
         for (let row of this.selectionfeecList) {
           if (!row.id) {
@@ -2135,7 +2183,7 @@ export default {
             return this.$message.error("请选择未开票的费用?");
           }
           if (Number(row.stlTtlAmount) > 0) {
-            return this.$message.error("请选择未结算的费用");
+            return this.$message.error("请选择未结算的费用");
           }
           this.$refs.feeModify.openDialog(row, "fix");
         }
@@ -2155,7 +2203,7 @@ export default {
             return this.$message.error("请选择未开票的费用?");
           }
           if (Number(row.stlTtlAmount) > 0) {
-            return this.$message.error("请选择未结算的费用");
+            return this.$message.error("请选择未结算的费用");
           }
           this.$refs.feeModify.openDialog(row, "del");
         }
@@ -2293,13 +2341,13 @@ export default {
     },
     rowStyle({ row, column, rowIndex }) {
       //已结算金额
-      if (Number(row.stlTtlAmount) != 0) {
+      if (Number(row.stlTtlAmount?row.stlTtlAmount:0) != 0) {
         return {
           color: "#0000FF"
         };
       }
       //发票金额和付费申请金额
-      if (Number(row.appliedAmount) != 0 || Number(row.appliedInvoiceAmount) != 0) {
+      if (Number(row.appliedAmount?row.appliedAmount:0) != 0 || Number(row.appliedInvoiceAmount?row.appliedInvoiceAmount:0) != 0) {
         return {
           color: "#FFC300"
         };

+ 53 - 5
src/views/boxManagement/rentalBox/detailsPage.vue

@@ -406,6 +406,9 @@
                 <el-button type="primary" plain size="small" :disabled="selectionfeecList.length == 0" @click="allClick('费用申请')"
                   >请核费用</el-button
                 >
+                <el-button type="danger" plain size="small" :disabled="selectionfeecList.length == 0" @click="allClick('C撤销请核')"
+                  >撤销请核</el-button
+                >
                 <el-button type="primary" plain size="small" :disabled="selectionfeecList.length != 1" @click="allClick('C申请修改')"
                   >申请修改</el-button
                 >
@@ -534,6 +537,7 @@
                   :controls="false"
                   placeholder="请输入 汇率"
                   size="small"
+                  :disabled="row.curCode==getLocalCurrency()"
                   style="width: 100%;"
                 ></el-input-number>
                 <span v-else>{{ row.exrate }}</span>
@@ -607,10 +611,11 @@
       :id="form.id"
       :itemIds="itemCIds"
       ref="printC"
-      businessValue="MYDL"
+      businessValue="OW-N"
       classifyCode="费用"
       groupCode="应付"
       :selecList="selectionfeecList"
+      :type="true"
     ></business-reports>
     <reports :id="form.id" :assemblyForm="form" businessValue="MYDL" ref="report"></reports>
     <!--审核弹窗-->
@@ -728,6 +733,7 @@ import {
   revokeRentCalculation,
   copyAgent,
   pleaseVerifyCost,
+  revokeCheckPleaseVerifyCost,
   getAccurate,
   finstlbillsGetAccBillIdList,
   fininvoicesGetAccBillIdList
@@ -3109,6 +3115,48 @@ export default {
             });
         });
       }
+      if (name == "C撤销请核") {
+        for (let row of this.selectionfeecList) {
+          if (!row.id) {
+            return this.$message.error("请保存费用明细");
+          }
+          if (row.auditStatus == 0) {
+            return this.$message.error("未申请费用,不允许撤销");
+          }
+          if (row.auditStatus > 2) {
+            return this.$message.error("费用已经审核通过,请使用申请修改和删除功能!");
+          }
+        }
+        this.$confirm("确定撤销请核?", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(() => {
+          let obj = {};
+          obj = {
+            srcId: this.form.id,
+            srcType: this.form.type,
+            feeCenterList: this.selectionfeecList,
+            url: "/boxManagement/rentalBox/index",
+            pageStatus: "",
+            pageLabel: "租箱"
+          };
+          const loading = this.$loading({
+            lock: true,
+            text: "加载中",
+            spinner: "el-icon-loading",
+            background: "rgba(255,255,255,0.7)"
+          });
+          revokeCheckPleaseVerifyCost(obj)
+            .then(res => {
+              this.$message.success("操作成功");
+              this.getDetail(this.form.id);
+            })
+            .finally(() => {
+              loading.close();
+            });
+        });
+      }
       if (name == "C申请修改") {
         for (let row of this.selectionfeecList) {
           if (!row.id) {
@@ -3124,7 +3172,7 @@ export default {
             return this.$message.error("请选择未开票的费用?");
           }
           if (Number(row.stlTtlAmount) > 0) {
-            return this.$message.error("请选择未结算的费用");
+            return this.$message.error("请选择未结算的费用");
           }
           this.$refs.feeModify.openDialog(row, "fix");
         }
@@ -3144,7 +3192,7 @@ export default {
             return this.$message.error("请选择未开票的费用?");
           }
           if (Number(row.stlTtlAmount) > 0) {
-            return this.$message.error("请选择未结算的费用");
+            return this.$message.error("请选择未结算的费用");
           }
           this.$refs.feeModify.openDialog(row, "del");
         }
@@ -3298,13 +3346,13 @@ export default {
     },
     rowStyle({ row, column, rowIndex }) {
       //已结算金额
-      if (Number(row.stlTtlAmount) != 0) {
+      if (Number(row.stlTtlAmount?row.stlTtlAmount:0) != 0) {
         return {
           color: "#0000FF"
         };
       }
       //发票金额和付费申请金额
-      if (Number(row.appliedAmount) != 0 || Number(row.appliedInvoiceAmount) != 0) {
+      if (Number(row.appliedAmount?row.appliedAmount:0) != 0 || Number(row.appliedInvoiceAmount?row.appliedInvoiceAmount:0) != 0) {
         return {
           color: "#FFC300"
         };

+ 4 - 2
src/views/iosBasicData/OceanFreightImport/bills/assembly/feecenter.vue

@@ -343,6 +343,7 @@
             :controls="false"
             :precision="5"
             placeholder="请输入"
+            :disabled="row.curCode==getLocalCurrency()"
             style="width: 100%;"
           ></el-input-number>
           <span v-else>{{ row.exrate }}</span>
@@ -676,6 +677,7 @@
             :controls="false"
             :precision="5"
             placeholder="请输入"
+            :disabled="row.curCode==getLocalCurrency()"
             style="width: 100%;"
           ></el-input-number>
           <span v-else>{{ row.exrate }}</span>
@@ -4618,13 +4620,13 @@ export default {
     },
     rowStyle({ row, column, rowIndex }) {
       //已结算金额
-      if (Number(row.stlTtlAmount) != 0) {
+      if (Number(row.stlTtlAmount?row.stlTtlAmount:0) != 0) {
         return {
           color: "#0000FF"
         };
       }
       //发票金额和付费申请金额
-      if (Number(row.appliedAmount) != 0 || Number(row.appliedInvoiceAmount) != 0) {
+      if (Number(row.appliedAmount?row.appliedAmount:0) != 0 || Number(row.appliedInvoiceAmount?row.appliedInvoiceAmount:0) != 0) {
         return {
           color: "#FFC300"
         };

+ 2 - 2
src/views/iosBasicData/SeafreightExportF/bills/assembly/DistributionBox/containers.vue

@@ -959,7 +959,7 @@ export default {
       if (this.assemblyForm.preContainersList.length == 0) {
         return this.$message.error("箱型箱量没数据,不允许新建");
       }
-      if (this.isOccupyNum) {
+      if (this.assemblyForm.boxBelongsTo=='SOC'&&this.assemblyForm.billType=='MH'&&this.assemblyForm.billType=='MH'&&this.isOccupyNum) {
         if (this.assemblyForm.preContainersList.filter(item => item.containerNumberStatus == "录入").length) {
           return this.$message.error("请先占用放箱号");
         }
@@ -988,7 +988,7 @@ export default {
         });
         return;
       }
-      if (this.isOccupyNum) {
+      if (this.assemblyForm.boxBelongsTo=='SOC'&&this.assemblyForm.billType=='MH'&&this.isOccupyNum) {
         if (this.assemblyForm.preContainersList.filter(item => item.containerNumberStatus == "录入").length) {
           return this.$message.error("请先占用放箱号");
         }

+ 4 - 2
src/views/iosBasicData/SeafreightExportF/bills/assembly/feecenter.vue

@@ -356,6 +356,7 @@
             :controls="false"
             :precision="5"
             placeholder="请输入"
+            :disabled="row.curCode==getLocalCurrency()"
             style="width: 100%;"
           ></el-input-number>
           <span v-else>{{ row.exrate }}</span>
@@ -687,6 +688,7 @@
             :controls="false"
             :precision="5"
             placeholder="请输入"
+            :disabled="row.curCode==getLocalCurrency()"
             style="width: 100%;"
           ></el-input-number>
           <span v-else>{{ row.exrate }}</span>
@@ -4650,13 +4652,13 @@ export default {
     },
     rowStyle({ row, column, rowIndex }) {
       //已结算金额
-      if (Number(row.stlTtlAmount) != 0) {
+      if (Number(row.stlTtlAmount?row.stlTtlAmount:0) != 0) {
         return {
           color: "#0000FF"
         };
       }
       //发票金额和付费申请金额
-      if (Number(row.appliedAmount) != 0 || Number(row.appliedInvoiceAmount) != 0) {
+      if (Number(row.appliedAmount?row.appliedAmount:0) != 0 || Number(row.appliedInvoiceAmount?row.appliedInvoiceAmount:0) != 0) {
         return {
           color: "#FFC300"
         };

+ 188 - 0
src/views/iosBasicData/bcorps/components/mergeCustomers.vue

@@ -0,0 +1,188 @@
+<template>
+    <div>
+        <el-dialog title="提取运价" :visible.sync="dialogVisible" append-to-body width="60%" :before-close="handleClose">
+            <avue-crud v-if="dialogVisible" :option="option" :table-loading="loading" :data="data" ref="crud"
+                @current-row-change="handleCurrentRowChange" id="out-table" :header-cell-class-name="headerClassName"
+                @on-load="onLoad">
+            </avue-crud>
+            <span slot="footer" class="dialog-footer">
+                <el-button @click="dialogVisible = false" size="mini">取 消</el-button>
+                <el-button type="primary" @click="submit" size="mini">导 入</el-button>
+            </span>
+        </el-dialog>
+    </div>
+</template>
+
+<script>
+import { MktSlotQuotation } from "@/api/iosBasicData/bills";
+export default {
+    props: {
+    },
+    data() {
+        return {
+            quotationObj: null,
+            ids: null,
+            data: [],
+            dialogVisible: false,
+            loading: false,
+            option: {
+                height: 500,
+                calcHeight: 30,
+                border: true,
+                index: true,
+                addBtn: false,
+                viewBtn: false,
+                delBtn: false,
+                editBtn: false,
+                menu: false,
+                header: false,
+                highlightCurrentRow: true,
+                column: [
+                    {
+                        label: "船公司",
+                        prop: "actualShippingCompanyCname",
+                        width: "160",
+                        overHidden: true,
+                    },
+                    {
+                        label: "开船日期",
+                        prop: "etd",
+                        width: "160",
+                        overHidden: true,
+                    },
+                    {
+                        label: "起运港",
+                        prop: "polEnName",
+                        width: "160",
+                        overHidden: true,
+                    },
+                    {
+                        label: "目的港",
+                        prop: "podEnName",
+                        width: "160",
+                        overHidden: true,
+                    },
+                    {
+                        label: "20GP",
+                        prop: "gp20",
+                        width: "160",
+                        overHidden: true,
+                    },
+                    {
+                        label: "40GP",
+                        prop: "gp40",
+                        width: "160",
+                        overHidden: true,
+                    },
+                    {
+                        label: "40HC",
+                        prop: "hc40",
+                        width: "160",
+                        overHidden: true,
+                    }
+                ]
+            },
+        }
+    },
+    async created() {
+        // this.option = await this.getColumnData(this.getColumnName(309.6), this.optionBack);
+    },
+    methods: {
+        openDialog(val, ids) {
+            this.dialogVisible = true
+            this.quotationObj = null
+            this.ids = ids
+            let obj = {
+                ...val
+            }
+            this.loading = true
+            MktSlotQuotation(obj).then(res => {
+                this.data = res.data.data
+            }).finally(() => {
+                this.loading = false
+            })
+        },
+        handleCurrentRowChange(val) {
+            this.quotationObj = val
+        },
+        submit() {
+            if (!this.quotationObj) {
+                return this.$message.error("请选择数据");
+            }
+            this.$emit('importData', this.quotationObj)
+            // this.$message.success("操作成功");
+            this.dialogVisible = false;
+            // const obj = {
+            //     billsIds: this.ids,
+            //     quotationObj: this.quotationObj
+            // }
+            // const loading = this.$loading({
+            //     lock: true,
+            //     text: '加载中',
+            //     spinner: 'el-icon-loading',
+            //     background: 'rgba(255,255,255,0.7)'
+            // });
+            // quotationImportBatch(obj).then(res => {
+            //     this.$message.success("操作成功");
+            //     this.dialogVisible = false;
+            //     this.$emit('refreshPage')
+            // }).finally(() => {
+            //     loading.close();
+            // })
+        },
+        //自定义列保存
+        async saveColumn(ref, option, optionBack, code) {
+            /**
+             * 已定义全局方法,直接使用,saveColumnData保存列数据方法,参数传值(表格名称,当前表格的option数据)
+             * 已定义全局方法,直接使用,getColumnName方法用来获取枚举值,参数根据自己定义的code值获取中文名
+             * 一定要执行异步操作,要等接口成功返回,才能执行下一行代码
+             */
+            const inSave = await this.saveColumnData(this.getColumnName(code), this[option]);
+            if (inSave) {
+                this.$message.success("保存成功");
+                //关闭窗口
+                this.$refs[ref].$refs.dialogColumn.columnBox = false;
+                this.searchReset()
+            }
+        },
+        //自定义列重置
+        async resetColumn(ref, option, optionBack, code) {
+            this[option] = this[optionBack];
+            const inSave = await this.delColumnData(this.getColumnName(code), this[optionBack]);
+            if (inSave) {
+                this.$message.success("重置成功");
+                this.$refs[ref].$refs.dialogColumn.columnBox = false;
+            }
+        },
+
+        // 更改表格颜色
+        headerClassName(tab) {
+            //颜色间隔
+            let back = ""
+            if (tab.columnIndex >= 0 && tab.column.level === 1) {
+                if (tab.columnIndex % 2 === 0) {
+                    back = "back-one"
+                } else if (tab.columnIndex % 2 === 1) {
+                    back = "back-two"
+                }
+            }
+            return back;
+        },
+
+    }
+}
+</script>
+
+<style scoped>
+::v-deep#out-table .back-one {
+    background: #ecf5ff !important;
+    text-align: center;
+    padding: 4px 0;
+}
+
+::v-deep#out-table .back-two {
+    background: #ecf5ff !important;
+    text-align: center;
+    padding: 4px 0;
+}
+</style>

+ 4 - 0
src/views/iosBasicData/bcorps/detailsPage.vue

@@ -8,6 +8,7 @@
           </el-button>
           <h4 style="margin: 0">往来单位</h4>
           <dev>
+            <!-- <el-button v-if="formData.id" type="warning" @click="merge">合并客户</el-button> -->
             <el-button v-if="formData.id" type="success" @click="fix">修改资料</el-button>
             <el-button type="primary" @click="submitForm">保存</el-button>
           </dev>
@@ -1734,6 +1735,9 @@ export default {
   },
   mounted() {},
   methods: {
+    merge(){
+
+    },
     fix() {
       this.$DialogForm.show({
         title: "进场导入",

+ 12 - 1
src/views/iosBasicData/businessCenter/customerBooking/detailsPage.vue

@@ -1146,6 +1146,15 @@
         <el-tab-pane label="海关信息">
           <customs-information :form="form" @synchronization="synchronization"></customs-information>
         </el-tab-pane>
+        <!-- <el-tab-pane label="单证中心">
+           <document-center
+            ref="documentCenter"
+            :detailData="detailData"
+            :assemblyForm="form"
+            :disabled="showLock"
+            @billsDetailfun="getDetail(form.id)"
+          ></document-center>
+        </el-tab-pane> -->
         <el-tab-pane label="文件中心">
           <containerTitle title="上传附件"></containerTitle>
           <c-upload
@@ -1221,6 +1230,7 @@ import { isProcurement } from "@/api/basicData/configuration";
 import { contrastObj, contrastList } from "@/util/contrastData";
 import { verifyEnglish, checkFullWidthSymbols, lineQuantityVerification } from "@/util/date";
 import customsInformation from "./components/customsInformation.vue";
+import documentCenter from "@/views/iosBasicData/SeafreightExportF/bills/assembly/DocumentCenter.vue";
 export default {
   name: "detailsPage",
   data() {
@@ -1831,7 +1841,8 @@ export default {
     freightRate,
     DistributionBox,
     importTemp,
-    customsInformation
+    customsInformation,
+    documentCenter
   },
   props: {
     detailData: Object,

+ 54 - 21
src/views/iosBasicData/financialManagement/PaymentApplication/detailsPage.vue

@@ -139,8 +139,12 @@
                     <span style="font-size:18px;font-weight:600;margin-left:10px;">
                       <!-- <span style="color:#F56C6C;">总行数:{{
                                                 form.finStlBillsItemsList.length }}</span> -->
-                      <span style="color: #67C23A;margin-right: 10px;"> 本币合计:{{ Number(form.amountCr||0 - form.amountDr||0).toFixed(2)||0 }}元 </span>
-                      <span style="color: #E6A23C;margin-right: 10px;"> 外币合计:{{ Number(form.amountCrUsd||0 - form.amountDrUsd||0).toFixed(2)||0 }}元 </span>
+                      <span style="color: #67C23A;margin-right: 10px;">
+                        本币合计:{{ Number(form.amountCr || 0 - form.amountDr || 0).toFixed(2) || 0 }}元
+                      </span>
+                      <span style="color: #E6A23C;margin-right: 10px;">
+                        外币合计:{{ Number(form.amountCrUsd || 0 - form.amountDrUsd || 0).toFixed(2) || 0 }}元
+                      </span>
                     </span>
                   </template>
                 </avue-crud>
@@ -1202,6 +1206,10 @@ export default {
           if (!this.form.corpId) {
             return this.$message.error("请选择付费对象");
           }
+          let currencyList = [];
+          for (let item of this.form.finStlBillsItemsList) {
+            currencyList.push(item.currentStlCurCode);
+          }
           this.form.billNoFormat = "FFSQ";
           this.form.businessTypeCode = "FFSQ";
           this.form.businessType = "FFSQ";
@@ -1211,26 +1219,51 @@ export default {
           let obj = {
             ...this.form
           };
-          finstlbillsSubmit(obj);
-          this.$confirm("是否提交申请?", "提示", {
-            confirmButtonText: "确定",
-            cancelButtonText: "取消",
-            type: "warning"
-          }).then(() => {
-            const loading = this.$loading({
-              lock: true,
-              text: "加载中",
-              spinner: "el-icon-loading",
-              background: "rgba(255,255,255,0.7)"
+          if ([...new Set(currencyList)].length >= 2) {
+            finstlbillsSubmit(obj).then(() => {
+              this.$confirm("申请中存在两种及以上的币别, 是否提交申请?", "提示", {
+                confirmButtonText: "确定",
+                cancelButtonText: "取消",
+                type: "warning"
+              }).then(() => {
+                const loading = this.$loading({
+                  lock: true,
+                  text: "加载中",
+                  spinner: "el-icon-loading",
+                  background: "rgba(255,255,255,0.7)"
+                });
+                settlementApproveV1(obj)
+                  .then(res => {
+                    this.getDetail(res.data.data.id);
+                  })
+                  .finally(() => {
+                    loading.close();
+                  });
+              });
             });
-            settlementApproveV1(obj)
-              .then(res => {
-                this.getDetail(res.data.data.id);
-              })
-              .finally(() => {
-                loading.close();
+          } else {
+            finstlbillsSubmit(obj).then(() => {
+              this.$confirm("是否提交申请?", "提示", {
+                confirmButtonText: "确定",
+                cancelButtonText: "取消",
+                type: "warning"
+              }).then(() => {
+                const loading = this.$loading({
+                  lock: true,
+                  text: "加载中",
+                  spinner: "el-icon-loading",
+                  background: "rgba(255,255,255,0.7)"
+                });
+                settlementApproveV1(obj)
+                  .then(res => {
+                    this.getDetail(res.data.data.id);
+                  })
+                  .finally(() => {
+                    loading.close();
+                  });
               });
-          });
+            });
+          }
         });
       }
       if (name == "撤销申请") {
@@ -1479,7 +1512,7 @@ export default {
     finstlbillslistAccBillV1fun() {
       let obj = {};
       obj.type = "2";
-      obj.operationType="付费申请";
+      obj.operationType = "付费申请";
       obj.branchId = this.form.branchId;
       obj.branchName = this.form.branchName;
       obj.corpCnName = this.form.corpId; // 付费对象

+ 56 - 26
src/views/iosBasicData/financialManagement/fininvoicesApplyfor/detailsPage.vue

@@ -10,7 +10,7 @@
         <el-button size="small" :disabled="!form.id" @click="previewreportfun">预 览 </el-button>
         <el-button size="small" v-if="roleName.indexOf('admin') != -1" :disabled="!form.id" @click="DesignreportDialog = true">报表设计 </el-button>
         <el-button type="success" size="small" :disabled="!form.id" plain @click="newbill">新建发票申请 </el-button>
-        <el-button size="small" type="danger" plain :disabled="!form.id || editPower" v-if="form.status !=0" @click="allClick('撤销')"
+        <el-button size="small" type="danger" plain :disabled="!form.id || editPower" v-if="form.status != 0" @click="allClick('撤销')"
           >撤销
         </el-button>
         <el-button size="small" type="success" plain :disabled="!form.id || editPower" v-else @click="allClick('提交')">提交 </el-button>
@@ -419,7 +419,7 @@ export default {
   },
   data() {
     return {
-      invoiceReview:false,
+      invoiceReview: false,
       checkId: "", // 审核需要的id
       batchNo: "",
       checkScheduleDialog: false, // 审核弹窗
@@ -1018,7 +1018,7 @@ export default {
       this.form.corpEnName = this.$route.query.corpEnName;
       this.form.corpArgreementNo = this.$route.query.corpEnName;
     }
-        isProcurement({ param: "whether.open.Invoice.review" }).then(res => {
+    isProcurement({ param: "whether.open.Invoice.review" }).then(res => {
       if (res.data.data == 1) {
         this.invoiceReview = true;
       }
@@ -1030,7 +1030,7 @@ export default {
   methods: {
     inEdit() {
       this.editButton = false;
-      if (this.form.status !=0) return;
+      if (this.form.status != 0) return;
       this.editDisabled = false;
       this.optionForm.disabled = false;
     },
@@ -1247,34 +1247,64 @@ export default {
         this.$refs.form.validate((valid, done) => {
           done();
           if (!valid) return;
+
+          let currencyList = [];
+          for (let item of this.form.finInvoicesItemsList) {
+            currencyList.push(item.curCode);
+          }
           this.form.billNoFormat = "FPSQ";
           this.form.businessTypeCode = "FPSQ";
           let obj = {
             ...this.form,
-            url:'/iosBasicData/financialManagement/fininvoicesApplyfor/index',
-            pageLabel:'发票申请(N)',
-            pageStatus:'',
+            url: "/iosBasicData/financialManagement/fininvoicesApplyfor/index",
+            pageLabel: "发票申请(N)",
+            pageStatus: ""
           };
-          fininvoicesSubmit(obj);
-          this.$confirm("是否提交?", "提示", {
-            confirmButtonText: "确定",
-            cancelButtonText: "取消",
-            type: "warning"
-          }).then(() => {
-            const loading = this.$loading({
-              lock: true,
-              text: "加载中",
-              spinner: "el-icon-loading",
-              background: "rgba(255,255,255,0.7)"
+          if ([...new Set(currencyList)].length >= 2) {
+            fininvoicesSubmit(obj).then(res => {
+              this.$confirm("申请中存在两种及以上的币别, 是否提交?", "提示", {
+                confirmButtonText: "确定",
+                cancelButtonText: "取消",
+                type: "warning"
+              }).then(() => {
+                const loading = this.$loading({
+                  lock: true,
+                  text: "加载中",
+                  spinner: "el-icon-loading",
+                  background: "rgba(255,255,255,0.7)"
+                });
+                finInvoicesApproveV1(obj)
+                  .then(res => {
+                    this.getDetail(res.data.data.id);
+                  })
+                  .finally(() => {
+                    loading.close();
+                  });
+              });
             });
-            finInvoicesApproveV1(obj)
-              .then(res => {
-                this.getDetail(res.data.data.id);
-              })
-              .finally(() => {
-                loading.close();
+          } else {
+            fininvoicesSubmit(obj).then(res => {
+              this.$confirm("是否提交?", "提示", {
+                confirmButtonText: "确定",
+                cancelButtonText: "取消",
+                type: "warning"
+              }).then(() => {
+                const loading = this.$loading({
+                  lock: true,
+                  text: "加载中",
+                  spinner: "el-icon-loading",
+                  background: "rgba(255,255,255,0.7)"
+                });
+                finInvoicesApproveV1(obj)
+                  .then(res => {
+                    this.getDetail(res.data.data.id);
+                  })
+                  .finally(() => {
+                    loading.close();
+                  });
               });
-          });
+            });
+          }
         });
       }
       if (name == "撤销") {
@@ -1455,7 +1485,7 @@ export default {
       });
       fininvoicesDetail(id)
         .then(res => {
-          if (res.data.data.status !=0) {
+          if (res.data.data.status != 0) {
             this.editButton = true;
             this.editDisabled = true;
             this.optionForm.disabled = true;

+ 8 - 4
src/views/ow/owPut/detailsPage.vue

@@ -674,6 +674,7 @@
                   :controls="false"
                   placeholder="请输入 汇率"
                   size="small"
+                  :disabled="row.curCode==getLocalCurrency()"
                   style="width: 100%;"
                 ></el-input-number>
                 <span v-else>{{ row.exrate }}</span>
@@ -887,6 +888,7 @@
                   :controls="false"
                   placeholder="请输入 汇率"
                   size="small"
+                  :disabled="row.curCode==getLocalCurrency()"
                   style="width: 100%;"
                 ></el-input-number>
                 <span v-else>{{ row.exrate }}</span>
@@ -1037,19 +1039,21 @@
       :id="form.id"
       :itemIds="itemCIds"
       ref="printD"
-      businessValue="OW-F"
+      businessValue="OW-N"
       classifyCode="费用"
       groupCode="应收"
       :selecList="selectionfeedList"
+      :type="true"
     ></business-reports>
     <business-reports
       :id="form.id"
       :itemIds="itemCIds"
       ref="printC"
-      businessValue="OW-F"
+      businessValue="OW-N"
       classifyCode="费用"
       groupCode="应付"
       :selecList="selectionfeecList"
+      :type="true"
     ></business-reports>
     <reports :id="form.id" :assemblyForm="form" businessValue="OW-F" ref="report"></reports>
     <!--审核弹窗-->
@@ -5162,13 +5166,13 @@ export default {
     },
     rowStyle({ row, column, rowIndex }) {
       //已结算金额
-      if (Number(row.stlTtlAmount) != 0) {
+      if (Number(row.stlTtlAmount?row.stlTtlAmount:0) != 0) {
         return {
           color: "#0000FF"
         };
       }
       //发票金额和付费申请金额
-      if (Number(row.appliedAmount) != 0 || Number(row.appliedInvoiceAmount) != 0) {
+      if (Number(row.appliedAmount?row.appliedAmount:0) != 0 || Number(row.appliedInvoiceAmount?row.appliedInvoiceAmount:0) != 0) {
         return {
           color: "#FFC300"
         };

+ 7 - 3
src/views/ow/owTask/detailsPage.vue

@@ -736,6 +736,7 @@
                   :controls="false"
                   placeholder="请输入 汇率"
                   size="small"
+                  :disabled="row.curCode==getLocalCurrency()"
                   style="width: 100%;"
                 ></el-input-number>
                 <span v-else>{{ row.exrate }}</span>
@@ -837,7 +838,7 @@
                 <el-button type="danger" plain size="small" :disabled="disabled || selectionfeecList.length == 0" @click="allClick('C取消申请')">{{
                   $t("btn118n.unAplly")
                 }}</el-button>
-                <el-button type="primary" plain size="small" @click="$refs.printC.openDialog()">打印账单</el-button>
+                <!-- <el-button type="primary" plain size="small" @click="$refs.printC.openDialog()">打印账单</el-button> -->
               </template>
               <template slot="indexHeader" slot-scope="{ row, index }">
                 <el-button type="primary" size="mini" icon="el-icon-plus" circle @click="feecAddRow()"> </el-button>
@@ -950,6 +951,7 @@
                   :controls="false"
                   placeholder="请输入 汇率"
                   size="small"
+                  :disabled="row.curCode==getLocalCurrency()"
                   style="width: 100%;"
                 ></el-input-number>
                 <span v-else>{{ row.exrate }}</span>
@@ -1104,6 +1106,7 @@
       classifyCode="费用"
       groupCode="应收"
       :selecList="selectionfeedList"
+      :type="true"
     ></business-reports>
     <business-reports
       :id="form.id"
@@ -1113,6 +1116,7 @@
       classifyCode="费用"
       groupCode="应付"
       :selecList="selectionfeecList"
+      :type="true"
     ></business-reports>
     <reports :id="form.id" :assemblyForm="form" businessValue="OW-N" ref="report"></reports>
     <!--审核弹窗-->
@@ -5759,13 +5763,13 @@ export default {
     },
     rowStyle({ row, column, rowIndex }) {
       //已结算金额
-      if (Number(row.stlTtlAmount) != 0) {
+      if (Number(row.stlTtlAmount?row.stlTtlAmount:0) != 0) {
         return {
           color: "#0000FF"
         };
       }
       //发票金额和付费申请金额
-      if (Number(row.appliedAmount) != 0 || Number(row.appliedInvoiceAmount) != 0) {
+      if (Number(row.appliedAmount?row.appliedAmount:0) != 0 || Number(row.appliedInvoiceAmount?row.appliedInvoiceAmount:0) != 0) {
         return {
           color: "#FFC300"
         };