浏览代码

画付费申请 修改 对账中心 bug

Qukatie 4 月之前
父节点
当前提交
9f2ae3daa2

+ 26 - 1
src/api/iosBasicData/finstlbills.js

@@ -190,7 +190,16 @@ export const approveDetail = (data) => {
   })
 }
 // 费用明细同步
-export const finstlbillsitemsRemove = (data) => {
+export const finstlbillsitemsRemove = (ids) => {
+  return request({
+    url: '/api/blade-los/finstlbillsitems/remove',
+    method: 'post',
+    params: {
+      ids,
+    }
+  })
+}
+export const feeItemsDelete = (data) => {
   return request({
     url: '/api/blade-los/finstlbills/feeItemsDelete',
     method: 'post',
@@ -227,4 +236,20 @@ export const revokeReconciliationV1 = (data) => {
     method: 'post',
     data: data
   })
+}
+// 提交申请
+export const settlementApproveV1 = (data) => {
+  return request({
+    url: '/api/blade-los/finstlbills/settlementApproveV1',
+    method: 'post',
+    data: data
+  })
+}
+//撤销申请
+export const srevokeSettlementApproveV1 = (data) => {
+  return request({
+    url: '/api/blade-los/finstlbills/srevokeSettlementApproveV1',
+    method: 'post',
+    data: data
+  })
 }

+ 14 - 0
src/router/views/index.js

@@ -4398,5 +4398,19 @@ export default [{
     },
     component: () => import( /* webpackChunkName: "views" */ '@/views/iosBasicData/financialManagement/finstlbills/index')
   }]
+},
+{
+  path: '/iosBasicData/financialManagement/PaymentApplication/index',
+  component: Layout,
+  hidden: true,
+  children: [{
+    path: '/iosBasicData/financialManagement/PaymentApplication/index',
+    name: '付费申请(N)',
+    meta: {
+      i18n: '/iosBasicData/financialManagement/PaymentApplication/index',
+      keepAlive: true,
+    },
+    component: () => import( /* webpackChunkName: "views" */ '@/views/iosBasicData/financialManagement/PaymentApplication/index')
+  }]
 }
 ]

+ 2 - 2
src/views/iosBasicData/OceanFreightImport/bills/index.vue

@@ -682,10 +682,10 @@ export default {
                     },
                     {
                         label: "到港日期",
-                        prop: "eta",
+                        prop: "actualEta",
                         width: "80",
                         overHidden: true,
-                        searchProp: "etaList",
+                        searchProp: "actualEtaList",
                         type: "date",
                         unlinkPanels: true,
                         searchRange: true,

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

@@ -54,6 +54,9 @@
                             <el-button type="success" size="small" plain @click.stop="$refs.print.openDialog()">
                                 报 表
                             </el-button>
+                            <el-button type="success" size="small" @click.stop="outExport">
+                                导 出
+                            </el-button>
                             <!--<el-button type="warning" size="small"-->
                             <!--           :disabled="numberfalsefun() || assemblyForm.id"-->
                             <!--           @click="equalDistribution">平均分配</el-button>-->
@@ -401,6 +404,26 @@ export default {
     },
     created() { },
     methods: {
+        outExport() {
+            this.$confirm("是否导出当前所有数据?", "提示", {
+                confirmButtonText: "确定",
+                cancelButtonText: "取消",
+                type: "warning"
+            }).then(() => {
+                let queryParams = {};
+                queryParams = {
+                  pid:this.assemblyForm.id
+                };
+                const routeData = this.$router.resolve({
+                    path: "/api/blade-los/containers/exportContainersList", //跳转目标窗口的地址
+                    query: {
+                        "Blade-Auth": getToken(),
+                        ...queryParams //括号内是要传递给新窗口的参数
+                    }
+                });
+                window.open(routeData.href.slice(1, routeData.href.length));
+            });
+        },
         computeChange(row) {
             row.vgmWeight = Number(Number(row.grossWeight ? row.grossWeight : 0) + Number(row.tare ? row.tare : 0)).toFixed(3)
         },

+ 1 - 1
src/views/iosBasicData/SeafreightExportF/bills/index.vue

@@ -823,7 +823,7 @@ export default {
                     {
                         label: "到港日期",
                         prop: "eta",
-                        width: "80",
+                        width: "120",
                         overHidden: true,
                         searchProp: "etaList",
                         type: "date",

+ 209 - 151
src/views/iosBasicData/financialManagement/PaymentApplication/detailsPage.vue

@@ -10,26 +10,33 @@
             </div>
             <div class="add-customer-btn">
 
-                <el-button size="small" style="margin-right: 8px" :loading="saveLoading" :disabled="!form.id"
-                    @click="previewreportfun">预 览
+                <el-button size="small" :disabled="!form.id" @click="previewreportfun">预 览
                 </el-button>
-                <el-button size="small" style="margin-right: 8px" v-if="roleName.indexOf('admin') != -1"
-                    :loading="saveLoading" :disabled="!form.id" @click="DesignreportDialog = true">报表设计
+                <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="warning" plain style="margin-right: 8px" :disabled="!form.id || editPower"
-                    v-if="form.billStatus == 1" :loading="saveLoading" @click="allClick('撤销对账')">撤销对账
+                <el-button size="small" type="success" plain :disabled="!form.id"
+                    v-if="form.status == '0' || form.status == '4'" @click="allClick('提交申请')">提交申请
                 </el-button>
-                <el-button size="small" type="success" plain style="margin-right: 8px" :disabled="!form.id || editPower"
-                    v-else :loading="saveLoading" @click="allClick('确认对账')">确认对账
+                <el-button size="small" type="danger" plain :disabled="!form.id || editPower"
+                    v-if="form.status == '1' || form.status == '4' || (form.status == '3' && roleName.indexOf('admin') != -1)"
+                    @click="allClick('撤销申请')">撤销申请
                 </el-button>
-                <el-button size="small" type="primary" style="margin-right: 8px" v-if="editButton"
-                    :loading="saveLoading" @click="inEdit">编 辑
+                <el-button size="small" type="primary" style="margin-right: 8px" v-if="editButton" @click="inEdit">编 辑
                 </el-button>
-                <el-button size="small" type="primary" style="margin-right: 8px" v-else :loading="saveLoading"
-                    @click="submit()">保 存
+                <el-button size="small" type="primary" style="margin-right: 8px" v-else @click="submit()">保 存
                 </el-button>
+                <el-dropdown style="line-height: 0">
+                    <el-button type="warning" :disabled="!form.id" size="small">
+                        审 批<i class="el-icon-arrow-down el-icon--right"></i>
+                    </el-button>
+                    <el-dropdown-menu slot="dropdown">
+                        <el-dropdown-item @click.native="checkScheduleDialog = true, checkId = form.id">审核进度
+                        </el-dropdown-item>
+                    </el-dropdown-menu>
+                </el-dropdown>
             </div>
         </div>
 
@@ -44,17 +51,21 @@
                                         <dic-select v-model="form.branchName" placeholder="所属公司" key="id"
                                             label="deptName" url="/blade-system/dept/top-list" :filterable="true"
                                             :remote="true" dataName="deptName"
-                                            :disabled="editButton || !(roleName.includes('admin') || roleName.includes('总部')) || tableData.length"
+                                            :disabled="editDisabled || !(roleName.includes('admin') || roleName.includes('总部')) || form.finStlBillsItemsList.length"
                                             @selectChange="dicChange('branchName', $event)"></dic-select>
                                     </tempalte>
                                     <tempalte slot="corpCnName">
-                                        <dic-select v-model="form.corpCnName" placeholder="对账单位" key="id" res="records"
+                                        <dic-select v-model="form.corpCnName" placeholder="付费对象" key="id" res="records"
                                             label="cnName" url="/blade-los/bcorps/selectList?status=0&current=1&size=5"
                                             :filterable="true" :remote="true" dataName="cnName"
-                                            :disabled="editButton || !(roleName.includes('admin') || roleName.includes('总部')) || tableData.length"
+                                            :disabled="editDisabled || !(roleName.includes('admin') || roleName.includes('总部')) || form.finStlBillsItemsList.length"
                                             @selectChange="dicChange('corpCnName', $event)">
                                         </dic-select>
                                     </tempalte>
+                                    <tempalte slot="remarks">
+                                        <el-input type="textarea" :rows="5" placeholder="请输入 备注" v-model="form.remarks">
+                                        </el-input>
+                                    </tempalte>
                                 </avue-form>
                             </trade-card>
                         </el-col>
@@ -68,11 +79,15 @@
                                     @saveColumn="saveColumn('crud', 'option', 'optionBack', 492)">
                                     <template slot="menuLeft">
                                         <el-button size="small" type="danger" style="margin-left: 10px"
-                                            :disabled="editButton" @click="batchDeletefun">一键删除
+                                            :disabled="editDisabled || handleSelectionData.length == 0"
+                                            @click="batchDeletefun">选定删除
+                                        </el-button>
+                                        <el-button size="small" type="danger" style="margin-left: 10px"
+                                            :disabled="editDisabled" @click="allDelete">全部删除
                                         </el-button>
                                         <span style="font-size:18px;font-weight:600;margin-left:10px;">
-                                            <span style="color:#F56C6C;">总行数:{{
-                                                form.finStlBillsItemsList.length }}</span>
+                                            <!-- <span style="color:#F56C6C;">总行数:{{
+                                                form.finStlBillsItemsList.length }}</span> -->
                                             <span style="color: #67C23A;margin-right: 10px;">
                                                 应收本币:{{ form.amountDr || 0 }}元
                                             </span>
@@ -92,19 +107,18 @@
                         </el-col>
                     </el-row>
                     <el-row>
-
                         <el-col :span="16">
                             <trade-card title="业务费用信息">
                                 <avue-crud :option="option2" :data="tableData" id="out-table" ref="crud2"
                                     @selection-change="selectionChange" :header-cell-style="tableHeaderCellStyle"
                                     :row-class-name="rowClassName" :cell-style="cellStyle" :search.sync="search"
                                     @search-change="searchChange" @search-reset="searchReset"
-                                    @row-dblclick="handleRowDBLClick"
+                                    @row-click="handleRowClick"
                                     @resetColumn="resetColumn('crud2', 'option2', 'optionBack2', 520)"
                                     @saveColumn="saveColumn('crud2', 'option2', 'optionBack2', 520)">
                                     <template slot="menuLeft">
                                         <el-button size="small" type="success" style="margin-right: 8px"
-                                            :disabled="editButton || selectionList.length == 0"
+                                            :disabled="editDisabled || selectionList.length == 0"
                                             @click="allClick('单据加入')">单据加入
                                         </el-button>
                                         <span style="font-size:18px;font-weight:600;margin-left:10px;">
@@ -118,57 +132,25 @@
                                                 应收外币:{{ sumDUSD.toFixed(2) }}元
                                             </span>
                                             <span style="color: #E6A23C;margin-right: 10px;">
-                                                应付币:{{ sumCUSD.toFixed(2) }}元
+                                                应付币:{{ sumCUSD.toFixed(2) }}元
                                             </span>
                                         </span>
                                     </template>
-                                    <template slot-scope="{disabled,size}" slot="mblnoSearch">
-                                        <el-input v-model="search.mblno" placeholder="请输入 MB/L NO" size="small"
-                                            :disabled="editButton"></el-input>
-                                    </template>
-                                    <template slot-scope="{disabled,size}" slot="hblnoSearch">
-                                        <el-input v-model="search.hblno" placeholder="请输入 HB/L NO" size="small"
-                                            :disabled="editButton"></el-input>
-                                    </template>
-                                    <template slot-scope="{disabled,size}" slot="accountDcSearch">
-                                        <el-select v-model="search.accountDc" placeholder="请选择 收付"
-                                            :disabled="editButton">
-                                            <el-option v-for="item in dcOptions" :key="item.value" :label="item.label"
-                                                :value="item.value">
-                                            </el-option>
-                                        </el-select>
-                                    </template>
-                                    <template slot-scope="{disabled,size}" slot="businessDateStartSearch">
-                                        <el-date-picker v-model="search.businessDateStart" type="date"
-                                            placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd 00:00:00"
-                                            :disabled="editButton">
-                                        </el-date-picker>
-                                    </template>
-                                    <template slot-scope="{disabled,size}" slot="businessDateEndSearch">
-                                        <el-date-picker v-model="search.businessDateEnd" type="date" placeholder="选择日期"
-                                            format="yyyy-MM-dd" value-format="yyyy-MM-dd 00:00:00"
-                                            :disabled="editButton">
-                                        </el-date-picker>
-                                    </template>
-                                    <template slot-scope="{disabled,size}" slot="voyageNoSearch">
-                                        <el-input v-model="search.voyageNo" placeholder="请选择 航次" size="small"
-                                            :disabled="editButton"></el-input>
-                                    </template>
                                     <template slot-scope="{disabled,size}" slot="feeCnNameSearch">
                                         <dic-select v-model="search.feeCnName" placeholder="费用名称" label="cnName"
                                             url="/blade-los/bfees/listAll" dataType="string" :filterable="true"
-                                            :multiple="true" :collapseTags="true" :disabled="editButton"></dic-select>
+                                            :multiple="true" :collapseTags="true"></dic-select>
                                     </template>
                                     <template slot-scope="{disabled,size}" slot="curCodeSearch">
                                         <dic-select v-model="search.curCode" placeholder="币别" label="code"
                                             :url="'/blade-los/bcurrency/obtainRate?deptId=' + form.branchId + '&date=' + form.billDate + '&type=2'"
-                                            :filterable="true" :disabled="editButton"></dic-select>
+                                            :filterable="true"></dic-select>
                                     </template>
-                                    <tempalte slot="vesselCnNameSearch" slot-scope="{ row }">
-                                        <dic-select v-model="search.vesselCnName" placeholder="船名" label="cnName"
+                                    <tempalte slot="vesselEnNameSearch" slot-scope="{ row }">
+                                        <dic-select v-model="search.vesselEnName" placeholder="船名" label="enName"
                                             res="records" url="/blade-los/bvessels/list?status=0&current=1&size=5"
-                                            :filterable="true" :remote="true" dataName="cnName" :slotRight="true"
-                                            rightLabel="code" :disabled="editButton"></dic-select>
+                                            :filterable="true" :remote="true" dataName="enName" :slotRight="true"
+                                            rightLabel="code"></dic-select>
                                     </tempalte>
                                 </avue-crud>
                             </trade-card>
@@ -180,7 +162,7 @@
                                     :row-class-name="rowClassName" :cell-style="cellStyle">
                                     <template slot="menuLeft">
                                         <el-button size="small" type="success" style="margin-right: 8px"
-                                            :disabled="editButton || itemSelectionList.length == 0"
+                                            :disabled="editDisabled || itemSelectionList.length == 0"
                                             @click="allClick('明细加入')">明细加入
                                         </el-button>
                                         <span style="font-size:18px;font-weight:600;margin-left:10px;">
@@ -223,7 +205,7 @@
         <!--设计报表弹窗-->
         <el-dialog append-to-body title="设计报表" class="el-dialogDeep" :visible.sync="DesignreportDialog" width="70%"
             :close-on-click-modal="false" :destroy-on-close="true" :close-on-press-escape="false" v-dialog-drag>
-            <reports :id="form.id" :assemblyForm="form" businessValue="DZZX"></reports>
+            <reports :id="form.id" :assemblyForm="form" businessValue="FFSQ"></reports>
         </el-dialog>
 
         <!--预览-->
@@ -237,7 +219,10 @@
             </span>
         </el-dialog>
 
-
+        <el-dialog append-to-body title="审批进度" class="el-dialogDeep" :visible.sync="checkScheduleDialog" width="40%"
+            :close-on-click-modal="false" :destroy-on-close="true" :close-on-press-escape="false" v-dialog-drag>
+            <check-schedule :checkId="checkId" :batchNo="batchNo" @choceScheduleFun="choceScheduleFun"></check-schedule>
+        </el-dialog>
         <!--报表组件-->
         <reportContainer ref="reportContainer"></reportContainer>
 
@@ -245,23 +230,22 @@
 </template>
 
 <script>
-import SearchQuery from "@/components/iosbasic-data/searchquery.vue";
 import {
     finstlbillsDetail,
     listAccBillV2,
-    finstlbillsSubmit, feeItemsSynchronize, confirmReconciliationV1, revokeReconciliationV1,
-    finstlbillsitemsRemove, finstlbillslistAccBillByCorp,
+    finstlbillsSubmit, feeItemsSynchronize, settlementApproveV1, srevokeSettlementApproveV1,
+    feeItemsDelete, finstlbillslistAccBillByCorp,
 } from '@/api/iosBasicData/finstlbills'
-import expand from "@/components/basic-container/expand.vue";
 import finstlbillsitems from "@/views/iosBasicData/finstlbills/assembly/finstlbillsitems.vue";
 import { dateFormat } from "@/util/date";
 import reports from "@/views/iosBasicData/SeafreightExportF/bills/assembly/reports.vue";
 import reportformsList from "@/views/iosBasicData/SeafreightExportF/bills/assembly/reportformsList.vue";
 import reportContainer from "@/views/iosBasicData/report-container/report-container.vue";
 import { getList as getreportsList, reportsGetReportData } from "@/api/iosBasicData/reports";
+import checkSchedule from "@/components/checkH/checkSchedule.vue";
 import dicSelect from "@/components/dicSelect/main";
 export default {
-    components: { reportContainer, reportformsList, reports, SearchQuery, expand, finstlbillsitems, dicSelect },
+    components: { dicSelect,reportContainer, reportformsList, reports, finstlbillsitems, checkSchedule },
     props: {
         detailData: {
             type: Object
@@ -273,6 +257,9 @@ export default {
     },
     data() {
         return {
+            checkId: '', // 审核需要的id
+            batchNo: '',
+            checkScheduleDialog: false,
             submitType: true,
             sumDRMB: 0,
             sumCRMB: 0,
@@ -283,13 +270,14 @@ export default {
             itemSelectionList: [],
             handleSelectionData: [],
             editButton: false,
+            editDisabled: false,
             pageData: [],
             tableData: [],
             finAccBillsVOList: [],
             form: {
                 branchId: JSON.parse(localStorage.getItem('sysitemData')).deptId,
                 branchName: JSON.parse(localStorage.getItem('sysitemData')).deptName,
-                billDate: dateFormat(new Date(), "yyyy-MM-dd") + ' 00:00:00', // 对账日期 默认 当天
+                billDate: dateFormat(new Date(), "yyyy-MM-dd") + ' 00:00:00', // 申请日期 默认 当天
                 finStlBillsItemsList: [],
                 fileList: []
             },
@@ -301,7 +289,7 @@ export default {
                 curCode: null,
                 businessDateStart: null,
                 businessDateEnd: null,
-                vesselCnName: null,
+                vesselEnName: null,
                 voyageNo: null
             },
             optionForm: {
@@ -316,12 +304,12 @@ export default {
                         disabled: false
                     },
                     {
-                        label: '对账单位',
+                        label: '付费对象',
                         prop: 'corpCnName',
                         disabled: false
                     },
                     {
-                        label: '对账日期',
+                        label: '申请日期',
                         prop: 'billDate',
                         type: "date",
                         format: "yyyy-MM-dd",
@@ -334,6 +322,11 @@ export default {
                         disabled: false
                     },
                     {
+                        label: '单据编号',
+                        prop: 'billNo',
+                        disabled: true
+                    },
+                    {
                         label: '备注',
                         prop: 'remarks',
                         type: 'textarea',
@@ -441,7 +434,7 @@ export default {
                     },
                     {
                         label: "船名",
-                        prop: "vesselCnName",
+                        prop: "vesselEnName",
                         width: 80,
                         overHidden: true
                     },
@@ -473,7 +466,7 @@ export default {
                 calcHeight: 30,
                 menuWidth: 60,
                 searchShow: true,
-                searchMenuSpan: 18,
+                searchMenuSpan: 24,
                 searchIcon: true,
                 searchIndex: 3,
                 tip: false,
@@ -515,12 +508,40 @@ export default {
                         overHidden: true
                     },
                     {
+                        label: '业务编号',
+                        prop: 'businessNo',
+                        search: true,
+                        hide: true,
+                        disabled: false
+                    },
+                    {
+                        label: '账单编号',
+                        prop: 'accountNo',
+                        search: true,
+                        hide: true,
+                        disabled: false
+                    },
+                    {
+                        label: '对账单号',
+                        prop: 'checkNo',
+                        search: true,
+                        hide: true,
+                        disabled: false
+                    },
+                    {
                         label: "收付",
                         prop: "accountDc",
                         width: 60,
                         search: true,
                         searchValue: 'D',
                         type: 'select',
+                        dicData: [{
+                            label: '收',
+                            value: 'D'
+                        }, {
+                            label: '付',
+                            value: 'C'
+                        }],
                         overHidden: true,
                     },
                     {
@@ -569,10 +590,25 @@ export default {
                         overHidden: true
                     },
                     {
+                        label: "业务类型",
+                        prop: "businessType",
+                        width: 80,
+                        type: 'select',
+                        dicUrl: "/api/blade-system/dict-biz/dictionary?code=fm_businessStatus",
+                        props: {
+                            label: "dictValue",
+                            value: "dictKey"
+                        },
+                        overHidden: true
+                    },
+                    {
                         label: "业务开始",
                         prop: "businessDateStart",
                         width: 80,
                         search: true,
+                        type: "date",
+                        format: "yyyy-MM-dd",
+                        valueFormat: "yyyy-MM-dd 00:00:00",
                         hide: true,
                         overHidden: true
                     },
@@ -581,12 +617,15 @@ export default {
                         prop: "businessDateEnd",
                         width: 80,
                         search: true,
+                        type: "date",
+                        format: "yyyy-MM-dd",
+                        valueFormat: "yyyy-MM-dd 00:00:00",
                         hide: true,
                         overHidden: true
                     },
                     {
                         label: "船名",
-                        prop: "vesselCnName",
+                        prop: "vesselEnName",
                         width: 80,
                         search: true,
                         overHidden: true
@@ -600,7 +639,7 @@ export default {
                     },
                     {
                         label: "业务日期",
-                        prop: "billDate",
+                        prop: "businessDate",
                         width: 80,
                         overHidden: true
                     },
@@ -709,16 +748,19 @@ export default {
         this.saveLocalCurrency(JSON.parse(localStorage.getItem('sysitemData')).deptId)
         if (this.detailData && this.detailData.id) {
             this.editButton = true
+            this.editDisabled = true
             this.optionForm.disabled = true
             this.getDetail(this.detailData.id)
         }
+        this.$nextTick(() => {
+            this.$refs.crud2.dicInit();
+        });
     },
     methods: {
         inEdit() {
-            if (this.form.billStatus == 1) {
-                return this.$message.error('已确认对账不允许编辑')
-            }
-            this.editButton = false
+            this.editButton = false 
+            if (this.form.status == 1||this.form.status == 3) return
+            this.editDisabled = false
             this.optionForm.disabled = false
         },
         lastPage() {
@@ -774,15 +816,17 @@ export default {
             this.pageData = this.form.finStlBillsItemsList.slice(start, end)
         },
         searchChange(params, done) {
+            this.tableData = []
+            this.finAccBillsVOList = []
             done()
             if (!this.form.id) {
                 return this.$message.error("请保存数据");
             }
-            if (!this.form.corpId && (this.search.hblno || this.search.mblno)) {
+            if (!this.form.corpId && (this.form.businessNo || this.form.accountNo || this.search.hblno || this.search.mblno)) {
                 this.finstlbillslistAccBillByCorpfun()
             } else {
                 if (!this.form.corpId) {
-                    return this.$message.error('请填写对账单位')
+                    return this.$message.error('请填写付费对象')
                 }
                 this.finstlbillslistAccBillV1fun()
             }
@@ -791,12 +835,15 @@ export default {
             this.search = {
                 mblno: null,
                 hblno: null,
+                checkNo: null,
+                accountNo: null,
+                businessNo: null,
                 accountDc: null,
                 feeCnName: null,
                 curCode: null,
                 businessDateStart: null,
                 businessDateEnd: null,
-                vesselCnName: null,
+                vesselEnName: null,
                 voyageNo: null
             }
         },
@@ -815,7 +862,7 @@ export default {
                 let obj = {
                     id: this.form.id,
                     finAccBillsVOList: itemData,
-                    type: 1
+                    type: 2
                 }
                 const loading = this.$loading({
                     lock: true,
@@ -837,7 +884,7 @@ export default {
                 let obj = {
                     id: this.form.id,
                     finAccBillsVOList: this.itemSelectionList,
-                    type: 1
+                    type: 2
                 }
                 const loading = this.$loading({
                     lock: true,
@@ -855,27 +902,23 @@ export default {
                     loading.close();
                 })
             }
-            if (name == '确认对账') {
+            if (name == '提交申请') {
                 this.$refs.form.validate((valid, done) => {
                     done()
                     if (!valid) return
-                    // 对账单位
+                    // 付费对象
                     if (!this.form.corpId) {
-                        return this.$message.error('请选择对账单位');
+                        return this.$message.error('请选择付费对象');
 
                     }
-                    this.form.billNoFormat = 'HYDZ'
-                    this.form.businessTypeCode = 'HYDZ'
-                    this.form.businessType = 'CHK' // 对账
-                    this.form.dc = this.search.accountDc
-                    this.form.url = '/iosBasicData/financialManagement/finstlbills/index'
+                    this.form.billNoFormat = 'FFSQ'
+                    this.form.businessTypeCode = 'FFSQ'
+                    this.form.businessType = 'FFSQ'
+                    this.form.url = '/iosBasicData/financialManagement/PaymentApplication/index'
                     this.form.pageStatus = "this.$store.getters.paidapplication"
-                    this.form.pageLabel = "对账中心(F)"
-                    delete this.search.mblno
-                    delete this.search.hblno
+                    this.form.pageLabel = "付费申请(N)"
                     let obj = {
                         ...this.form,
-                        ...this.search
 
                     }
                     this.$confirm('是否确认对账?', '提示', {
@@ -889,7 +932,7 @@ export default {
                             spinner: 'el-icon-loading',
                             background: 'rgba(255,255,255,0.7)'
                         });
-                        confirmReconciliationV1(obj).then(res => {
+                        settlementApproveV1(obj).then(res => {
                             this.getDetail(res.data.data.id)
                         }).finally(() => {
                             loading.close();
@@ -898,26 +941,21 @@ export default {
 
                 });
             }
-            if (name == '撤销对账') {
+            if (name == '撤销申请') {
                 this.$refs.form.validate((valid, done) => {
                     done()
                     if (!valid) return
-                    // 对账单位
+                    // 付费对象
                     if (!this.form.corpId) {
-                        return this.$message.error('请选择对账单位');
-
+                        return this.$message.error('请选择付费对象');
                     }
-                    this.form.billNoFormat = 'HYDZ'
-                    this.form.businessTypeCode = 'HYDZ'
-                    this.form.businessType = 'CHK' // 对账
-                    this.form.dc = this.search.accountDc
-                    delete this.search.mblno
-                    delete this.search.hblno
+                    this.form.billNoFormat = 'FFSQ'
+                    this.form.businessTypeCode = 'FFSQ'
+                    this.form.businessType = 'FFSQ'
                     let obj = {
                         ...this.form,
-                        ...this.search
                     }
-                    this.$confirm('是否撤销对账?', '提示', {
+                    this.$confirm('是否撤销申请?', '提示', {
                         confirmButtonText: '确定',
                         cancelButtonText: '取消',
                         type: 'warning'
@@ -928,7 +966,7 @@ export default {
                             spinner: 'el-icon-loading',
                             background: 'rgba(255,255,255,0.7)'
                         });
-                        revokeReconciliationV1(obj).then(res => {
+                        srevokeSettlementApproveV1(obj).then(res => {
                             this.getDetail(res.data.data.id)
                         }).finally(() => {
                             loading.close();
@@ -991,7 +1029,7 @@ export default {
                 billId: this.form.id,
                 reportCode: val.classifyCode,
                 groupCode: val.groupCode,
-                type: 'DZZX'
+                type: 'FFSQ'
             }).then(res => {
                 this.handleReportPreview(val.url, res.data.data.data)
             })
@@ -999,16 +1037,14 @@ export default {
         // 报表预览
         previewreportfun() {
             getreportsList(1, 10, {
-                businessType: 'DZZX',
+                businessType: 'FFSQ',
                 // classifyCode:'结算中心',
                 // groupCode:'付费结算'
             }).then(res => {
                 if (res.data.data.records.length == 1) {
                     this.reportRadio(res.data.data.records[0])
                 } else {
-                    this.saveLoading = true
                     this.selectPrintingDialog = true
-                    this.saveLoading = false
                     let page = {
                         pageSize: 10,
                         currentPage: 1,
@@ -1016,7 +1052,7 @@ export default {
                     }
                     this.$nextTick(() => {
                         this.$refs.reportformsList.onLoad(page, {
-                            businessType: 'DZZX',
+                            businessType: 'FFSQ',
                             // classifyCode:'结算中心',
                             // groupCode:'付费结算'
                         })
@@ -1031,20 +1067,16 @@ export default {
             this.$refs.form.validate((valid, done) => {
                 done()
                 if (!valid) return
-                // 对账单位
+                // 付费对象
                 if (!this.form.corpId) {
-                    return this.$message.error('请选择对账单位');
+                    return this.$message.error('请选择付费对象');
 
                 }
-                this.form.billNoFormat = 'HYDZ'
-                this.form.businessTypeCode = 'HYDZ'
-                this.form.businessType = 'CHK' // 对账
-                this.form.dc = this.search.accountDc
-                delete this.search.mblno
-                delete this.search.hblno
+                this.form.billNoFormat = 'FFSQ'
+                this.form.businessTypeCode = 'FFSQ'
+                this.form.businessType = 'FFSQ' // 结算单
                 let obj = {
-                    ...this.form,
-                    ...this.search
+                    ...this.form
                 }
                 const loading = this.$loading({
                     lock: true,
@@ -1069,17 +1101,8 @@ export default {
                 background: 'rgba(255,255,255,0.7)'
             });
             finstlbillsDetail(id).then(res => {
-                this.search = {
-                    accountDc: res.data.data.dc,
-                    feeCnName: res.data.data.feeCnName,
-                    curCode: res.data.data.curCode,
-                    businessDateStart: res.data.data.businessDateStart,
-                    businessDateEnd: res.data.data.businessDateEnd,
-                    vesselCnName: res.data.data.vesselCnName,
-                    voyageNo: res.data.data.voyageNo
-                }
-                if (res.data.data.billStatus == 1) {
-                    this.editButton = true
+                if (res.data.data.status == 1||res.data.data.status == 3) {
+                    this.editDisabled = true
                     this.optionForm.disabled = true
                 }
                 this.form = res.data.data
@@ -1102,19 +1125,21 @@ export default {
         },
         // 检索出的弹窗
         finstlbillslistAccBillByCorpfun() {
-            delete this.form.id
+            // delete this.form.id
             // let obj = JSON.parse(JSON.stringify(this.form))
             let obj = {}
-            obj.type = '1'
+            obj.type = '2'
             obj.branchId = this.form.branchId
             obj.branchName = this.form.branchName
-            obj.corpCnName = this.form.corpId // 对账单位
-            obj.createUserName = this.form.updateUser ? this.form.updateUser : null // 操作员id
-            obj.dc = this.search.dc // 收付 D=收 C=付
+            obj.corpCnName = this.form.corpId // 付费对象
+            obj.dc = this.search.accountDc // 收付 D=收 C=付
             obj.curCode = this.search.curCode // 币别
             obj.mblno = this.search.mblno // MB/L NO
             obj.hblno = this.search.hblno // HB/L NO
-            obj.vesselCnName = this.search.vesselCnName // 中文船名
+            obj.checkNo = this.search.checkNo
+            obj.accBillNo = this.search.accountNo // 账单编号  ACCT NO
+            obj.billNo = this.search.businessNo // 单据编号  JOB NO
+            obj.vesselEnName = this.search.vesselEnName // 中文船名
             obj.voyageNo = this.search.voyageNo // 航次
             obj.feeCnName = this.search.feeCnName//
             obj.businessDateStart = this.search.businessDateStart
@@ -1127,16 +1152,18 @@ export default {
         // 检索接口
         finstlbillslistAccBillV1fun() {
             let obj = {}
-            obj.type = '1'
+            obj.type = '2'
             obj.branchId = this.form.branchId
             obj.branchName = this.form.branchName
-            obj.corpCnName = this.form.corpId // 对账单位
-            obj.createUserName = this.form.updateUser ? this.form.updateUser : null // 操作员id
+            obj.corpCnName = this.form.corpId // 付费对象
             obj.dc = this.search.accountDc // 收付 D=收 C=付
             obj.curCode = this.search.curCode // 币别
             obj.mblno = this.search.mblno // MB/L NO
             obj.hblno = this.search.hblno // HB/L NO
-            obj.vesselCnName = this.search.vesselCnName // 中文船名
+            obj.checkNo = this.search.checkNo
+            obj.accBillNo = this.search.accountNo // 账单编号  ACCT NO
+            obj.billNo = this.search.businessNo // 单据编号  JOB NO
+            obj.vesselEnName = this.search.vesselEnName // 中文船名
             obj.voyageNo = this.search.voyageNo // 航次
             obj.feeCnName = this.search.feeCnName//
             obj.businessDateStart = this.search.businessDateStart
@@ -1156,7 +1183,7 @@ export default {
                 loading.close();
             })
         },
-        // 一键删除
+        // 全部删除
         batchDeletefun() {
             if (this.handleSelectionData.length == 0) {
                 return this.$message.warning('请选择要删除的数据')
@@ -1182,7 +1209,7 @@ export default {
                     let obj = {
                         id: this.form.id,
                         ids: arrIds.join(','),
-                        type: 1,
+                        type: 2,
                     }
                     const loading = this.$loading({
                         lock: true,
@@ -1190,7 +1217,7 @@ export default {
                         spinner: 'el-icon-loading',
                         background: 'rgba(255,255,255,0.7)'
                     });
-                    finstlbillsitemsRemove(obj).then(res => {
+                    feeItemsDelete(obj).then(res => {
                         this.$message.success("删除成功");
                         this.getDetail(this.form.id)
                     }).finally(() => {
@@ -1199,6 +1226,32 @@ export default {
                 }
             })
         },
+        allDelete() {
+            if (this.form.finStlBillsItemsList.length == 0) {
+                return this.$message.error("暂无数据");
+            }
+            let ids = []
+            for (let item of this.form.finStlBillsItemsList) {
+                ids.push(item.id)
+            }
+            let obj = {
+                id: this.form.id,
+                ids: ids.join(','),
+                type: 2,
+            }
+            const loading = this.$loading({
+                lock: true,
+                text: '加载中',
+                spinner: 'el-icon-loading',
+                background: 'rgba(255,255,255,0.7)'
+            });
+            feeItemsDelete(obj).then(res => {
+                this.$message.success("删除成功");
+                this.getDetail(this.form.id)
+            }).finally(() => {
+                loading.close();
+            })
+        },
         // 下面表格多选
         handleSelectionChange(list) {
             this.handleSelectionData = list
@@ -1239,8 +1292,13 @@ export default {
             }
             this.itemSelectionList = list
         },
-        handleRowDBLClick(row, event) {
+        handleRowClick(row, event) {
             this.finAccBillsVOList = row.finAccBillsVOList
+            this.$refs.crud3.$refs.table.toggleAllSelection()
+        },
+        //请核关闭
+        choceScheduleFun() {
+            this.checkScheduleDialog = false
         },
         //返回列表
         backToList() {

+ 23 - 15
src/views/iosBasicData/financialManagement/PaymentApplication/index.vue

@@ -46,26 +46,29 @@
       </avue-crud>
     </basic-container>
 
-    <finstlbillsDetails ref="finstlbillsDetails" v-if="!isShow" :editSave="editSave" @goBack="goBack"
+    <!-- <finstlbillsDetails ref="finstlbillsDetails" v-if="!isShow" :editSave="editSave" @goBack="goBack"
       @toAddEdit="toAddEdit" :key="datekey">
-    </finstlbillsDetails>
-
+    </finstlbillsDetails> -->
+    <detailsPage v-if="!isShow" :detailData="detailData" @goBack="goBack" @toAddEdit="toAddEdit" :pageIds="pageIds"
+      :key="datekey">
+    </detailsPage>
   </div>
 </template>
 
 <script>
 import { finstlbillsList, finstlbillsDetail, finstlbillsSubmit, finstlbillsRemove, finstlbillsitemsList } from "@/api/iosBasicData/finstlbills";
 import { mapGetters } from "vuex";
-import finstlbillsDetails from '@/views/iosBasicData/PaymentApplication/finstlbillsDetails.vue'
+import detailsPage from "./detailsPage";
 import { getWorkDicts } from "@/api/system/dictbiz";
 import finstlbillsitems from "@/views/iosBasicData/PaymentApplication/assembly/finstlbillsitems.vue";
 import { getRateList } from "@/api/iosBasicData/rateManagement";
 import reports from "@/views/iosBasicData/SeafreightExportF/bills/assembly/reports.vue";
 import dicSelect from "@/components/dicSelect/main";
 export default {
-  components: { finstlbillsitems, finstlbillsDetails, reports, dicSelect },
+  components: { finstlbillsitems, detailsPage, reports, dicSelect },
   data() {
     return {
+      pageIds: [],
       datekey: Date.now(),
       // 详情页面和列表切换
       isShow: true,
@@ -256,7 +259,7 @@ export default {
             width: "160",
             overHidden: true
           },
-           {
+          {
             label: "外币应付",
             prop: "amountCrUsd",
             width: "160",
@@ -274,7 +277,7 @@ export default {
             width: "160",
             overHidden: true
           },
-             {
+          {
             label: "外币应收",
             prop: "amountDrUsd",
             width: "160",
@@ -380,7 +383,7 @@ export default {
           {
             label: "制单人",
             prop: "createUserName",
-            search:true,
+            search: true,
             overHidden: true,
           },
           {
@@ -497,7 +500,7 @@ export default {
         }
       }, 200);
     }
-    if (this.$route.query.mblno||this.$route.query.corpId) {
+    if (this.$route.query.mblno || this.$route.query.corpId) {
       setTimeout(() => {
         if (!this.$store.getters.payAppStatus) {
           this.newbillFun()
@@ -539,33 +542,38 @@ export default {
     },
     // 新建账单
     newbillFun() {
+      this.pageIds = []
       this.isShow = false
       this.editSave = false
       // this.$refs.finstlbillsDetails
       this.$store.commit("IN_PAYAPP_DETAIL");
     },
     toAddEdit() {
+      this.detailData = {}
       this.datekey = Date.now()
       this.isShow = false
-      this.editSave = false
     },
     // 编辑
     rowEdit(row) {
-      this.isShow = false
-      this.editSave = true
-      this.$nextTick(() => {
-        this.$refs.finstlbillsDetails.finstlbillsDetailfun(row.id)
+      this.pageIds = []
+      this.data.forEach(item => {
+        this.pageIds.push(item.id)
       })
+      this.detailData = {
+        id: row.id
+      };
+      this.isShow = false
       this.$store.commit("IN_PAYAPP_DETAIL");
     },
     // 详情的返回列表
     goBack() {
       // 初始化数据
+      this.pageIds = []
       // this.detailData = this.$options.data().detailData;
       if (JSON.stringify(this.$route.query) != "{}") {
         this.$router.$avueRouter.closeTag();
         this.$router.push({
-          path: "/iosBasicData/PaymentApplication/index"
+          path: "/iosBasicData/financialManagement/PaymentApplication/index"
         });
       }
       this.isShow = true;

+ 90 - 112
src/views/iosBasicData/financialManagement/finstlbills/detailsPage.vue

@@ -10,25 +10,22 @@
             </div>
             <div class="add-customer-btn">
 
-                <el-button size="small" style="margin-right: 8px" :loading="saveLoading" :disabled="!form.id"
-                    @click="previewreportfun">预 览
+                <el-button size="small" :disabled="!form.id" @click="previewreportfun">预 览
                 </el-button>
-                <el-button size="small" style="margin-right: 8px" v-if="roleName.indexOf('admin') != -1"
-                    :loading="saveLoading" :disabled="!form.id" @click="DesignreportDialog = true">报表设计
+                <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="warning" plain style="margin-right: 8px" :disabled="!form.id || editPower"
-                    v-if="form.billStatus == 1" :loading="saveLoading" @click="allClick('撤销对账')">撤销对账
+                <el-button size="small" type="warning" plain :disabled="!form.id || editPower"
+                    v-if="form.billStatus == 1" @click="allClick('撤销对账')">撤销对账
                 </el-button>
-                <el-button size="small" type="success" plain style="margin-right: 8px" :disabled="!form.id || editPower"
-                    v-else :loading="saveLoading" @click="allClick('确认对账')">确认对账
+                <el-button size="small" type="success" plain :disabled="!form.id || editPower"
+                    v-else @click="allClick('确认对账')">确认对账
                 </el-button>
-                <el-button size="small" type="primary" style="margin-right: 8px" v-if="editButton"
-                    :loading="saveLoading" @click="inEdit">编 辑
+                <el-button size="small" type="primary" v-if="editButton" @click="inEdit">编 辑
                 </el-button>
-                <el-button size="small" type="primary" style="margin-right: 8px" v-else :loading="saveLoading"
-                    @click="submit()">保 存
+                <el-button size="small" type="primary" v-else @click="submit()">保 存
                 </el-button>
             </div>
         </div>
@@ -44,17 +41,21 @@
                                         <dic-select v-model="form.branchName" placeholder="所属公司" key="id"
                                             label="deptName" url="/blade-system/dept/top-list" :filterable="true"
                                             :remote="true" dataName="deptName"
-                                            :disabled="editButton || !(roleName.includes('admin') || roleName.includes('总部')) || tableData.length"
+                                            :disabled="editDisabled || !(roleName.includes('admin') || roleName.includes('总部'))||form.finStlBillsItemsList.length"
                                             @selectChange="dicChange('branchName', $event)"></dic-select>
                                     </tempalte>
                                     <tempalte slot="corpCnName">
                                         <dic-select v-model="form.corpCnName" placeholder="对账单位" key="id" res="records"
                                             label="cnName" url="/blade-los/bcorps/selectList?status=0&current=1&size=5"
                                             :filterable="true" :remote="true" dataName="cnName"
-                                            :disabled="editButton || !(roleName.includes('admin') || roleName.includes('总部')) || tableData.length"
+                                            :disabled="editDisabled || !(roleName.includes('admin') || roleName.includes('总部'))||form.finStlBillsItemsList.length"
                                             @selectChange="dicChange('corpCnName', $event)">
                                         </dic-select>
                                     </tempalte>
+                                    <tempalte slot="remarks">
+                                        <el-input type="textarea" :rows="5" placeholder="请输入 备注" v-model="form.remarks">
+                                        </el-input>
+                                    </tempalte>
                                 </avue-form>
                             </trade-card>
                         </el-col>
@@ -68,15 +69,15 @@
                                     @saveColumn="saveColumn('crud', 'option', 'optionBack', 492)">
                                     <template slot="menuLeft">
                                         <el-button size="small" type="danger" style="margin-left: 10px"
-                                            :disabled="editButton || handleSelectionData.length == 0"
-                                            @click="batchDeletefun">批量删除
+                                            :disabled="editDisabled || handleSelectionData.length == 0"
+                                            @click="batchDeletefun">选定删除
                                         </el-button>
                                         <el-button size="small" type="danger" style="margin-left: 10px"
-                                            :disabled="editButton" @click="allDelete">一键删除
+                                            :disabled="editDisabled" @click="allDelete">全部删除
                                         </el-button>
                                         <span style="font-size:18px;font-weight:600;margin-left:10px;">
-                                            <span style="color:#F56C6C;">总行数:{{
-                                                form.finStlBillsItemsList.length }}</span>
+                                            <!-- <span style="color:#F56C6C;">总行数:{{
+                                                form.finStlBillsItemsList.length }}</span> -->
                                             <span style="color: #67C23A;margin-right: 10px;">
                                                 应收本币:{{ form.amountDr || 0 }}元
                                             </span>
@@ -96,19 +97,18 @@
                         </el-col>
                     </el-row>
                     <el-row>
-
                         <el-col :span="16">
                             <trade-card title="业务费用信息">
                                 <avue-crud :option="option2" :data="tableData" id="out-table" ref="crud2"
                                     @selection-change="selectionChange" :header-cell-style="tableHeaderCellStyle"
                                     :row-class-name="rowClassName" :cell-style="cellStyle" :search.sync="search"
                                     @search-change="searchChange" @search-reset="searchReset"
-                                    @row-dblclick="handleRowDBLClick"
+                                    @row-click="handleRowClick"
                                     @resetColumn="resetColumn('crud2', 'option2', 'optionBack2', 520)"
                                     @saveColumn="saveColumn('crud2', 'option2', 'optionBack2', 520)">
                                     <template slot="menuLeft">
                                         <el-button size="small" type="success" style="margin-right: 8px"
-                                            :disabled="editButton || selectionList.length == 0"
+                                            :disabled="editDisabled || selectionList.length == 0"
                                             @click="allClick('单据加入')">单据加入
                                         </el-button>
                                         <span style="font-size:18px;font-weight:600;margin-left:10px;">
@@ -122,57 +122,25 @@
                                                 应收外币:{{ sumDUSD.toFixed(2) }}元
                                             </span>
                                             <span style="color: #E6A23C;margin-right: 10px;">
-                                                应付币:{{ sumCUSD.toFixed(2) }}元
+                                                应付币:{{ sumCUSD.toFixed(2) }}元
                                             </span>
                                         </span>
                                     </template>
-                                    <template slot-scope="{disabled,size}" slot="mblnoSearch">
-                                        <el-input v-model="search.mblno" placeholder="请输入 MB/L NO" size="small"
-                                            :disabled="editButton"></el-input>
-                                    </template>
-                                    <template slot-scope="{disabled,size}" slot="hblnoSearch">
-                                        <el-input v-model="search.hblno" placeholder="请输入 HB/L NO" size="small"
-                                            :disabled="editButton"></el-input>
-                                    </template>
-                                    <template slot-scope="{disabled,size}" slot="accountDcSearch">
-                                        <el-select v-model="search.accountDc" placeholder="请选择 收付"
-                                            :disabled="editButton">
-                                            <el-option v-for="item in dcOptions" :key="item.value" :label="item.label"
-                                                :value="item.value">
-                                            </el-option>
-                                        </el-select>
-                                    </template>
-                                    <template slot-scope="{disabled,size}" slot="businessDateStartSearch">
-                                        <el-date-picker v-model="search.businessDateStart" type="date"
-                                            placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd 00:00:00"
-                                            :disabled="editButton">
-                                        </el-date-picker>
-                                    </template>
-                                    <template slot-scope="{disabled,size}" slot="businessDateEndSearch">
-                                        <el-date-picker v-model="search.businessDateEnd" type="date" placeholder="选择日期"
-                                            format="yyyy-MM-dd" value-format="yyyy-MM-dd 00:00:00"
-                                            :disabled="editButton">
-                                        </el-date-picker>
-                                    </template>
-                                    <template slot-scope="{disabled,size}" slot="voyageNoSearch">
-                                        <el-input v-model="search.voyageNo" placeholder="请选择 航次" size="small"
-                                            :disabled="editButton"></el-input>
-                                    </template>
                                     <template slot-scope="{disabled,size}" slot="feeCnNameSearch">
                                         <dic-select v-model="search.feeCnName" placeholder="费用名称" label="cnName"
                                             url="/blade-los/bfees/listAll" dataType="string" :filterable="true"
-                                            :multiple="true" :collapseTags="true" :disabled="editButton"></dic-select>
+                                            :multiple="true" :collapseTags="true" :disabled="editDisabled"></dic-select>
                                     </template>
                                     <template slot-scope="{disabled,size}" slot="curCodeSearch">
                                         <dic-select v-model="search.curCode" placeholder="币别" label="code"
                                             :url="'/blade-los/bcurrency/obtainRate?deptId=' + form.branchId + '&date=' + form.billDate + '&type=2'"
-                                            :filterable="true" :disabled="editButton"></dic-select>
+                                            :filterable="true" :disabled="editDisabled"></dic-select>
                                     </template>
-                                    <tempalte slot="vesselCnNameSearch" slot-scope="{ row }">
-                                        <dic-select v-model="search.vesselCnName" placeholder="船名" label="cnName"
+                                    <tempalte slot="vesselEnNameSearch" slot-scope="{ row }">
+                                        <dic-select v-model="search.vesselEnName" placeholder="船名" label="enName"
                                             res="records" url="/blade-los/bvessels/list?status=0&current=1&size=5"
-                                            :filterable="true" :remote="true" dataName="cnName" :slotRight="true"
-                                            rightLabel="code" :disabled="editButton"></dic-select>
+                                            :filterable="true" :remote="true" dataName="enName" :slotRight="true"
+                                            rightLabel="code" :disabled="editDisabled"></dic-select>
                                     </tempalte>
                                 </avue-crud>
                             </trade-card>
@@ -184,7 +152,7 @@
                                     :row-class-name="rowClassName" :cell-style="cellStyle">
                                     <template slot="menuLeft">
                                         <el-button size="small" type="success" style="margin-right: 8px"
-                                            :disabled="editButton || itemSelectionList.length == 0"
+                                            :disabled="editDisabled || itemSelectionList.length == 0"
                                             @click="allClick('明细加入')">明细加入
                                         </el-button>
                                         <span style="font-size:18px;font-weight:600;margin-left:10px;">
@@ -254,7 +222,7 @@ import {
     finstlbillsDetail,
     listAccBillV2,
     finstlbillsSubmit, feeItemsSynchronize, confirmReconciliationV1, revokeReconciliationV1,
-    finstlbillsitemsRemove, finstlbillslistAccBillByCorp,
+    feeItemsDelete, finstlbillslistAccBillByCorp,
 } from '@/api/iosBasicData/finstlbills'
 import expand from "@/components/basic-container/expand.vue";
 import finstlbillsitems from "@/views/iosBasicData/finstlbills/assembly/finstlbillsitems.vue";
@@ -287,6 +255,7 @@ export default {
             itemSelectionList: [],
             handleSelectionData: [],
             editButton: false,
+            editDisabled: false,
             pageData: [],
             tableData: [],
             finAccBillsVOList: [],
@@ -305,7 +274,7 @@ export default {
                 curCode: null,
                 businessDateStart: null,
                 businessDateEnd: null,
-                vesselCnName: null,
+                vesselEnName: null,
                 voyageNo: null
             },
             optionForm: {
@@ -338,6 +307,11 @@ export default {
                         disabled: false
                     },
                     {
+                        label: '单据编号',
+                        prop: 'billNo',
+                        disabled: true
+                    },
+                    {
                         label: '备注',
                         prop: 'remarks',
                         type: 'textarea',
@@ -346,8 +320,7 @@ export default {
             },
             option: {},
             optionBack: {
-                height: '300px',
-                maxHeight: '300px',
+                maxHeight: '200px',
                 calcHeight: 30,
                 menuWidth: 60,
                 tip: false,
@@ -445,7 +418,7 @@ export default {
                     },
                     {
                         label: "船名",
-                        prop: "vesselCnName",
+                        prop: "vesselEnName",
                         width: 80,
                         overHidden: true
                     },
@@ -525,6 +498,13 @@ export default {
                         search: true,
                         searchValue: 'D',
                         type: 'select',
+                        dicData: [{
+                            label: '收',
+                            value: 'D'
+                        }, {
+                            label: '付',
+                            value: 'C'
+                        }],
                         overHidden: true,
                     },
                     {
@@ -573,10 +553,25 @@ export default {
                         overHidden: true
                     },
                     {
+                        label: "业务类型",
+                        prop: "businessType",
+                        width: 80,
+                        type: 'select',
+                        dicUrl: "/api/blade-system/dict-biz/dictionary?code=fm_businessStatus",
+                        props: {
+                            label: "dictValue",
+                            value: "dictKey"
+                        },
+                        overHidden: true
+                    },
+                    {
                         label: "业务开始",
                         prop: "businessDateStart",
                         width: 80,
                         search: true,
+                        type: "date",
+                        format: "yyyy-MM-dd",
+                        valueFormat: "yyyy-MM-dd 00:00:00",
                         hide: true,
                         overHidden: true
                     },
@@ -585,12 +580,15 @@ export default {
                         prop: "businessDateEnd",
                         width: 80,
                         search: true,
+                        type: "date",
+                        format: "yyyy-MM-dd",
+                        valueFormat: "yyyy-MM-dd 00:00:00",
                         hide: true,
                         overHidden: true
                     },
                     {
                         label: "船名",
-                        prop: "vesselCnName",
+                        prop: "vesselEnName",
                         width: 80,
                         search: true,
                         overHidden: true
@@ -604,7 +602,7 @@ export default {
                     },
                     {
                         label: "业务日期",
-                        prop: "billDate",
+                        prop: "businessDate",
                         width: 80,
                         overHidden: true
                     },
@@ -713,16 +711,19 @@ export default {
         this.saveLocalCurrency(JSON.parse(localStorage.getItem('sysitemData')).deptId)
         if (this.detailData && this.detailData.id) {
             this.editButton = true
+            this.editDisabled = true
             this.optionForm.disabled = true
             this.getDetail(this.detailData.id)
         }
+        this.$nextTick(() => {
+            this.$refs.crud2.dicInit();
+        });
     },
     methods: {
         inEdit() {
-            if (this.form.billStatus == 1) {
-                return this.$message.error('已确认对账不允许编辑')
-            }
             this.editButton = false
+            if (this.form.billStatus == 1) return
+            this.editDisabled = false
             this.optionForm.disabled = false
         },
         lastPage() {
@@ -778,6 +779,8 @@ export default {
             this.pageData = this.form.finStlBillsItemsList.slice(start, end)
         },
         searchChange(params, done) {
+            this.tableData = []
+            this.finAccBillsVOList = []
             done()
             if (!this.form.id) {
                 return this.$message.error("请保存数据");
@@ -800,7 +803,7 @@ export default {
                 curCode: null,
                 businessDateStart: null,
                 businessDateEnd: null,
-                vesselCnName: null,
+                vesselEnName: null,
                 voyageNo: null
             }
         },
@@ -871,16 +874,11 @@ export default {
                     this.form.billNoFormat = 'HYDZ'
                     this.form.businessTypeCode = 'HYDZ'
                     this.form.businessType = 'CHK' // 对账
-                    this.form.dc = this.search.accountDc
                     this.form.url = '/iosBasicData/financialManagement/finstlbills/index'
                     this.form.pageStatus = "this.$store.getters.paidapplication"
-                    this.form.pageLabel = "对账中心(F)"
-                    delete this.search.mblno
-                    delete this.search.hblno
+                    this.form.pageLabel = "对账中心(N)"
                     let obj = {
-                        ...this.form,
-                        ...this.search
-
+                        ...this.form
                     }
                     this.$confirm('是否确认对账?', '提示', {
                         confirmButtonText: '确定',
@@ -914,12 +912,8 @@ export default {
                     this.form.billNoFormat = 'HYDZ'
                     this.form.businessTypeCode = 'HYDZ'
                     this.form.businessType = 'CHK' // 对账
-                    this.form.dc = this.search.accountDc
-                    delete this.search.mblno
-                    delete this.search.hblno
                     let obj = {
-                        ...this.form,
-                        ...this.search
+                        ...this.form
                     }
                     this.$confirm('是否撤销对账?', '提示', {
                         confirmButtonText: '确定',
@@ -1010,9 +1004,7 @@ export default {
                 if (res.data.data.records.length == 1) {
                     this.reportRadio(res.data.data.records[0])
                 } else {
-                    this.saveLoading = true
                     this.selectPrintingDialog = true
-                    this.saveLoading = false
                     let page = {
                         pageSize: 10,
                         currentPage: 1,
@@ -1043,12 +1035,8 @@ export default {
                 this.form.billNoFormat = 'HYDZ'
                 this.form.businessTypeCode = 'HYDZ'
                 this.form.businessType = 'CHK' // 对账
-                this.form.dc = this.search.accountDc
-                delete this.search.mblno
-                delete this.search.hblno
                 let obj = {
-                    ...this.form,
-                    ...this.search
+                    ...this.form
                 }
                 const loading = this.$loading({
                     lock: true,
@@ -1073,17 +1061,8 @@ export default {
                 background: 'rgba(255,255,255,0.7)'
             });
             finstlbillsDetail(id).then(res => {
-                this.search = {
-                    accountDc: res.data.data.dc,
-                    feeCnName: res.data.data.feeCnName,
-                    curCode: res.data.data.curCode,
-                    businessDateStart: res.data.data.businessDateStart,
-                    businessDateEnd: res.data.data.businessDateEnd,
-                    vesselCnName: res.data.data.vesselCnName,
-                    voyageNo: res.data.data.voyageNo
-                }
                 if (res.data.data.billStatus == 1) {
-                    this.editButton = true
+                    this.editDisabled = true
                     this.optionForm.disabled = true
                 }
                 this.form = res.data.data
@@ -1106,19 +1085,18 @@ export default {
         },
         // 检索出的弹窗
         finstlbillslistAccBillByCorpfun() {
-            delete this.form.id
+            // delete this.form.id
             // let obj = JSON.parse(JSON.stringify(this.form))
             let obj = {}
             obj.type = '1'
             obj.branchId = this.form.branchId
             obj.branchName = this.form.branchName
             obj.corpCnName = this.form.corpId // 对账单位
-            obj.createUserName = this.form.updateUser ? this.form.updateUser : null // 操作员id
-            obj.dc = this.search.dc // 收付 D=收 C=付
+            obj.dc = this.search.accountDc // 收付 D=收 C=付
             obj.curCode = this.search.curCode // 币别
             obj.mblno = this.search.mblno // MB/L NO
             obj.hblno = this.search.hblno // HB/L NO
-            obj.vesselCnName = this.search.vesselCnName // 中文船名
+            obj.vesselEnName = this.search.vesselEnName // 中文船名
             obj.voyageNo = this.search.voyageNo // 航次
             obj.feeCnName = this.search.feeCnName//
             obj.businessDateStart = this.search.businessDateStart
@@ -1135,12 +1113,11 @@ export default {
             obj.branchId = this.form.branchId
             obj.branchName = this.form.branchName
             obj.corpCnName = this.form.corpId // 对账单位
-            obj.createUserName = this.form.updateUser ? this.form.updateUser : null // 操作员id
             obj.dc = this.search.accountDc // 收付 D=收 C=付
             obj.curCode = this.search.curCode // 币别
             obj.mblno = this.search.mblno // MB/L NO
             obj.hblno = this.search.hblno // HB/L NO
-            obj.vesselCnName = this.search.vesselCnName // 中文船名
+            obj.vesselEnName = this.search.vesselEnName // 中文船名
             obj.voyageNo = this.search.voyageNo // 航次
             obj.feeCnName = this.search.feeCnName//
             obj.businessDateStart = this.search.businessDateStart
@@ -1160,7 +1137,7 @@ export default {
                 loading.close();
             })
         },
-        // 一键删除
+        // 全部删除
         batchDeletefun() {
             if (this.handleSelectionData.length == 0) {
                 return this.$message.warning('请选择要删除的数据')
@@ -1194,7 +1171,7 @@ export default {
                         spinner: 'el-icon-loading',
                         background: 'rgba(255,255,255,0.7)'
                     });
-                    finstlbillsitemsRemove(obj).then(res => {
+                    feeItemsDelete(obj).then(res => {
                         this.$message.success("删除成功");
                         this.getDetail(this.form.id)
                     }).finally(() => {
@@ -1222,7 +1199,7 @@ export default {
                 spinner: 'el-icon-loading',
                 background: 'rgba(255,255,255,0.7)'
             });
-            finstlbillsitemsRemove(obj).then(res => {
+            feeItemsDelete(obj).then(res => {
                 this.$message.success("删除成功");
                 this.getDetail(this.form.id)
             }).finally(() => {
@@ -1269,8 +1246,9 @@ export default {
             }
             this.itemSelectionList = list
         },
-        handleRowDBLClick(row, event) {
+        handleRowClick(row, event) {
             this.finAccBillsVOList = row.finAccBillsVOList
+            this.$refs.crud3.$refs.table.toggleAllSelection()
         },
         //返回列表
         backToList() {

+ 1 - 6
src/views/iosBasicData/financialManagement/finstlbills/index.vue

@@ -650,11 +650,6 @@ export default {
       this.data.forEach(item => {
         this.pageIds.push(item.id)
       })
-      // this.isShow = false
-      // this.editSave = true
-      // this.$nextTick(() => {
-      //   this.$refs.finstlbillsDetails.finstlbillsDetailfun(row.id)
-      // })
       this.detailData = {
         id: row.id
       };
@@ -668,7 +663,7 @@ export default {
       if (JSON.stringify(this.$route.query) != "{}") {
         this.$router.$avueRouter.closeTag();
         this.$router.push({
-          path: "/iosBasicData/finstlbills/index"
+          path: "/iosBasicData/financialManagement/finstlbills/index"
         });
       }
       this.detailData = {}

+ 1 - 0
src/views/iosBasicData/finstlbills/finstlbillsDetails.vue

@@ -981,6 +981,7 @@ export default {
         },
         // 弹窗选择
         retrievePopupsSelect(row) {
+            console.log(row)
             // this.form = row
             this.$set(this.form, 'corpId', row.id)
             this.$set(this.form, 'corpCnName', row.cnName)