Browse Source

缺失登陆人信息 导致非本人单据明细不显示 修改对账中心 付费中心 结算中心检索条件

Qukatie 6 months ago
parent
commit
07879b12e3

+ 7 - 0
src/api/boxManagement/buyContainer/index.js

@@ -285,4 +285,11 @@ export function mergeGenerateCost(data) {
     method: 'post',
     data: data
   })
+}
+export function revokeMergeGenerateCost(data) {
+  return request({
+    url: '/api/blade-los/tradingBox/revokeMergeGenerateCost',
+    method: 'post',
+    data: data
+  })
 }

+ 1 - 0
src/views/boxManagement/boxAdjustment/detailsPage.vue

@@ -373,6 +373,7 @@ export default {
   name: "detailsPage",
   data() {
     return {
+      saberUserInfo: JSON.parse(localStorage.getItem('saber-userInfo')).content, // 当前登录人个人信息
       boxSelectionList: [],
       boxOption: {
         calcHeight: 30,

+ 1 - 0
src/views/boxManagement/boxExit/detailsPage.vue

@@ -378,6 +378,7 @@ export default {
   name: "detailsPage",
   data() {
     return {
+      saberUserInfo: JSON.parse(localStorage.getItem('saber-userInfo')).content, // 当前登录人个人信息
       boxSelectionList: [],
       boxOption: {
         calcHeight: 30,

+ 1 - 0
src/views/boxManagement/buyContainer/detailsPage.vue

@@ -358,6 +358,7 @@ export default {
   name: "detailsPage",
   data() {
     return {
+      saberUserInfo: JSON.parse(localStorage.getItem('saber-userInfo')).content, // 当前登录人个人信息
       CNYSUM: 0,
       USDSUM: 0,
       excelBox: false,

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

@@ -250,6 +250,7 @@ export default {
   name: "detailsPage",
   data() {
     return {
+      saberUserInfo: JSON.parse(localStorage.getItem('saber-userInfo')).content, // 当前登录人个人信息
       activationForm: {},
       activationOption: {
         menuBtn: false,

+ 1 - 0
src/views/boxManagement/rentalBox/detailsPage.vue

@@ -410,6 +410,7 @@ export default {
   name: "detailsPage",
   data() {
     return {
+      saberUserInfo: JSON.parse(localStorage.getItem('saber-userInfo')).content, // 当前登录人个人信息
       boxSelectionList: [],
       rulesList: [],
       rtOption: {

+ 1 - 0
src/views/boxManagement/transferCost/detailsPage.vue

@@ -151,6 +151,7 @@ export default {
   name: "detailsPage",
   data() {
     return {
+      saberUserInfo: JSON.parse(localStorage.getItem('saber-userInfo')).content, // 当前登录人个人信息
       boxSelectionList: [],
       rulesList: [],
       excelBox: false,

+ 39 - 4
src/views/iosBasicData/ComputationCenter/index.vue

@@ -235,7 +235,6 @@ export default {
                         overHidden: true,
                         width: "150",
                     },
-
                     {
                         label: "结算日期起",
                         prop: "billDateStart",
@@ -259,6 +258,28 @@ export default {
                         valueFormat: "yyyy-MM-dd HH:mm:ss",
                     },
                     {
+                        label: "开票日期起",
+                        prop: "invoiceDateStart",
+                        search: false,
+                        overHidden: true,
+                        hide: true,
+                        searchLabelWidth: '100',
+                        type: "date",
+                        format: "yyyy-MM-dd",
+                        valueFormat: "yyyy-MM-dd HH:mm:ss",
+                    },
+                    {
+                        label: "开票日期止",
+                        prop: "invoiceDateEnd",
+                        search: false,
+                        overHidden: true,
+                        hide: true,
+                        searchLabelWidth: '100',
+                        type: "date",
+                        format: "yyyy-MM-dd",
+                        valueFormat: "yyyy-MM-dd HH:mm:ss",
+                    },
+                    {
                         label: "单据开始日期",
                         prop: "businessDateStart",
                         search: true,
@@ -386,7 +407,7 @@ export default {
         this.saberUserInfo = JSON.parse(localStorage.getItem('saber-userInfo')).content
         this.option = await this.getColumnData(this.getColumnName(324), this.optionBack);
         if (this.saberUserInfo.role_name.indexOf('admin') != -1 || this.saberUserInfo.role_name.indexOf('总部') != -1) {
-            this.option.searchMenuSpan = 18
+            this.option.searchMenuSpan = 24
             this.option.column.forEach(item => {
                 if (item.prop == 'branchId') {
                     item.search = true
@@ -439,7 +460,7 @@ export default {
                 if (item.branchName != this.selectionList[0].branchName) {
                     return this.$message.error('请选择相同的所属公司')
                 }
-                if (item.corpCnName != this.selectionList[0].corpCnName) {
+                if (item.corpId != this.selectionList[0].corpId) {
                     return this.$message.error('请选择相同的往来单位')
                 }
             }
@@ -575,10 +596,24 @@ export default {
                 this.findObject(this.option.column, "invCorpCnName").hide = false
                 this.findObject(this.option.column, "type").hide = false
                 this.findObject(this.option.column, "businessType").hide = true
+                this.findObject(this.option.column, "billDateStart").search = false
+                this.findObject(this.option.column, "billDateEnd").search = false
+                this.findObject(this.option.column, "businessDateStart").search = false
+                this.findObject(this.option.column, "businessDateEnd").search = false
+                this.findObject(this.option.column, "invoiceDateStart").search = true
+                this.findObject(this.option.column, "invoiceDateEnd").search = true
+
+
             } else {
                 this.findObject(this.option.column, "invCorpCnName").hide = true
                 this.findObject(this.option.column, "type").hide = true
                 this.findObject(this.option.column, "businessType").hide = false
+                this.findObject(this.option.column, "billDateStart").search = true
+                this.findObject(this.option.column, "billDateEnd").search = true
+                this.findObject(this.option.column, "businessDateStart").search = true
+                this.findObject(this.option.column, "businessDateEnd").search = true
+                this.findObject(this.option.column, "invoiceDateStart").search = false
+                this.findObject(this.option.column, "invoiceDateEnd").search = false
             }
             this.amountSubSum = 0
             this.amountSubUsdSum = 0
@@ -773,7 +808,7 @@ export default {
             this[option] = this[optionBack];
             const inSave = await this.delColumnData(this.getColumnName(code), this[optionBack]);
             if (this.saberUserInfo.role_name.indexOf('admin') != -1 || this.saberUserInfo.role_name.indexOf('总部') != -1) {
-                this.option.searchMenuSpan = 18
+                this.option.searchMenuSpan = 24
                 this.option.column.forEach(item => {
                     if (item.prop == 'branchId') {
                         item.search = true

+ 17 - 8
src/views/iosBasicData/PaymentApplication/finstlbillsDetails.vue

@@ -92,11 +92,12 @@
                                         </el-form-item>
                                     </el-col>
                                     <el-col :span="5">
-                                        <el-form-item label="费用名称" prop="feeCnName">
-                                            <dic-select v-model="form.feeCnName" placeholder="费用名称" key="id"
-                                                label="cnName" url="/blade-los/bfees/listAll" :filterable="true"
-                                                :multiple="true" :collapseTags="true"
-                                                :disabled="editSave || tableData.length"></dic-select>
+                                        <el-form-item label="申请日期" prop="billDate"
+                                            :rules="[{ required: true, message: '', trigger: 'blur' }]">
+                                            <el-date-picker v-model="form.billDate" clearable style="width: 100%;"
+                                                type="date" size="small" :disabled="editSave || tableData.length"
+                                                format="yyyy-MM-dd" value-format="yyyy-MM-dd" placeholder="选择申请日期">
+                                            </el-date-picker>
                                         </el-form-item>
                                     </el-col>
                                     <el-col :span="4">
@@ -209,6 +210,14 @@
                                             </el-form-item>
                                         </el-col>
                                         <el-col :span="5">
+                                            <el-form-item label="费用名称" prop="feeCnName">
+                                                <dic-select v-model="form.feeCnName" placeholder="费用名称" key="id"
+                                                    label="cnName" url="/blade-los/bfees/listAll" :filterable="true"
+                                                    :multiple="true" :collapseTags="true"
+                                                    :disabled="editSave || tableData.length"></dic-select>
+                                            </el-form-item>
+                                        </el-col>
+                                        <el-col :span="5">
                                             <el-form-item label="船 名" prop="vesselCnName">
                                                 <search-query :datalist="vesselData" :selectValue="form.vesselCnName"
                                                     :filterable="true" :clearable="true" :remote="true"
@@ -228,14 +237,14 @@
 
                                             </el-form-item>
                                         </el-col>
-                                        <el-col :span="5">
+                                        <el-col :span="4">
                                             <el-form-item label="单据编号" prop="billNo">
                                                 <el-input style="width: 100%;" v-model="form.billNo" size="small"
                                                     autocomplete="off" :disabled="true" clearable
                                                     placeholder="单据编号"></el-input>
                                             </el-form-item>
                                         </el-col>
-                                        <el-col :span="4">
+                                        <el-col :span="5">
                                             <el-form-item label="修改人" prop="updateUserName">
                                                 <el-input style="width: 100%;" v-model="form.updateUserName"
                                                     size="small" autocomplete="off" :disabled="true" clearable
@@ -554,7 +563,7 @@ export default {
         this.roleName = localStorage.getItem('roleName').split(',')
         // 获取当前登录人个人信息
         this.saberUserInfo = JSON.parse(localStorage.getItem('saber-userInfo')).content
-        if (this.$route.query.mblno||this.$route.query.corpId) {
+        if (this.$route.query.mblno || this.$route.query.corpId) {
             this.form.mblno = this.$route.query.mblno
             this.form.corpCnName = this.$route.query.corpCnName
             this.form.corpId = this.$route.query.corpId

+ 31 - 7
src/views/iosBasicData/PaymentApplication/index.vue

@@ -152,6 +152,12 @@ export default {
             width: "120",
             overHidden: true
           },
+          {
+            label: "申请日期",
+            prop: "billDate",
+            overHidden: true,
+            width: "120",
+          },
           // {
           //   label: "银行账号",
           //   prop: "bankAccountNo",
@@ -280,15 +286,9 @@ export default {
             width: "160",
             overHidden: true
           },
-          // {
-          //   label: "业务日期",
-          //   prop: "billDate",
-          //   overHidden: true,
-          //   width: "150",
-          // },
           {
             label: "业务开始日期",
-            prop: "billDateStart",
+            prop: "businessDateStart",
             width: "140",
             overHidden: true,
             search: true,
@@ -300,6 +300,30 @@ export default {
           },
           {
             label: "业务结束日期",
+            prop: "businessDateEnd",
+            width: "140",
+            overHidden: true,
+            search: true,
+            hide: true,
+            searchLabelWidth: "100",
+            type: "date",
+            format: "yyyy-MM-dd",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
+          },
+          {
+            label: "申请开始日期",
+            prop: "billDateStart",
+            width: "140",
+            overHidden: true,
+            search: true,
+            hide: true,
+            searchLabelWidth: "100",
+            type: "date",
+            format: "yyyy-MM-dd",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
+          },
+          {
+            label: "申请结束日期",
             prop: "billDateEnd",
             width: "140",
             overHidden: true,

+ 1 - 0
src/views/iosBasicData/aeamends/amendsDetails.vue

@@ -317,6 +317,7 @@ export default {
     components: { reportformsList, reportContainer, TreeSelect, reports, SearchQuery, amendsCostdetails, billgenerated },
     data() {
         return {
+            saberUserInfo: JSON.parse(localStorage.getItem('saber-userInfo')).content, // 当前登录人个人信息
             retrievePopupsType: false, // 检索完的弹窗
             retrievePopupsData: [], // 检索完的弹窗数据
             retrievePopupsOption: {

+ 1 - 0
src/views/iosBasicData/boxPlan/boxPlan/detailsPage.vue

@@ -136,6 +136,7 @@ export default {
   name: "detailsPage",
   data() {
     return {
+      saberUserInfo: JSON.parse(localStorage.getItem('saber-userInfo')).content, // 当前登录人个人信息
       years: [
         {
           value: '2024',

+ 1 - 0
src/views/iosBasicData/businessCenter/mkt&slot/detailsPage.vue

@@ -154,6 +154,7 @@ export default {
   name: "detailsPage",
   data() {
     return {
+      saberUserInfo: JSON.parse(localStorage.getItem('saber-userInfo')).content, // 当前登录人个人信息
       selectionList: [],
       selectionList2: [],
       checkId: '', // 审核需要的id

+ 9 - 2
src/views/iosBasicData/decisionAnalysis/index.vue

@@ -74,7 +74,7 @@ export default {
                 height: 'auto',
                 calcHeight: 30,
                 searchShow: true,
-                searchMenuSpan: 18,
+                searchMenuSpan: 24,
                 border: true,
                 index: true,
                 addBtn: false,
@@ -133,8 +133,9 @@ export default {
                         prop: "billType",
                         type: "select",
                         dataType: 'string',
+                        clearable: false,
                         multiple: true,
-                        search: true,
+                        search: false,
                         span: 6,
                         dicData: [
                             {
@@ -778,6 +779,9 @@ export default {
                 if (item.prop == 'branchId') {
                     item.search = true
                 }
+                if (item.prop == 'billType') {
+                    item.search = true
+                }
             })
         }
         // this.option.height = window.innerHeight - 370;
@@ -1252,6 +1256,9 @@ export default {
                     if (item.prop == 'branchId') {
                         item.search = true
                     }
+                    if (item.prop == 'billType') {
+                        item.search = true
+                    }
                 })
             }
             if (inSave) {

+ 1 - 0
src/views/iosBasicData/feeApplication/detailsPage.vue

@@ -160,6 +160,7 @@ export default {
   name: "detailsPage",
   data() {
     return {
+      saberUserInfo: JSON.parse(localStorage.getItem('saber-userInfo')).content, // 当前登录人个人信息
       CNYSUM: 0,
       USDSUM: 0,
       sumData: [],

+ 111 - 113
src/views/iosBasicData/finstlbills/finstlbillsDetails.vue

@@ -49,32 +49,25 @@
                                                 @selectChange="dicChange('branchName', $event)"></dic-select>
                                         </el-form-item>
                                     </el-col>
-                                    <el-col :span="16">
+                                    <el-col :span="12">
                                         <el-form-item label="对账单位" prop="corpCnName">
-                                            <el-col :span="16">
-                                                <search-query :datalist="corpData" :selectValue="form.corpCnName"
-                                                    :clearable="true" :disabled="editSave || tableData.length"
-                                                    :filterable="true" :remote="true" :buttonIf="false"
-                                                    placeholder="请选择对账单位"
-                                                    :forParameter="{ key: 'id', label: 'cnName', value: 'cnName' }"
-                                                    @corpChange="corpChange($event, 'corpCnName')"
-                                                    @remoteMethod="corpBcorpsListfun" @corpFocus="corpBcorpsListfun">
-                                                </search-query>
-                                            </el-col>
-                                            <!--                                            <el-col :span="9">
-                                                <span style="padding-left: 20px"></span>
-                                                <el-input style="width: 100%;" v-model="form.corpEnName" size="small"
-                                                    autocomplete="off" :disabled="editSave || tableData.length"
-                                                    clearable placeholder="对账单位">
-                                                </el-input>
-                                            </el-col>-->
-                                            <!--                                            <el-col :span="5">
-                                                <el-checkbox style="width: 100%;text-align: right" size="medium"
-                                                    :true-label="1" :false-label="0"
-                                                    :disabled="editSave || tableData.length"
-                                                    v-model="form.corpIsSigned">已签约
-                                                </el-checkbox>
-                                            </el-col>-->
+                                            <search-query :datalist="corpData" :selectValue="form.corpCnName"
+                                                :clearable="true" :disabled="editSave || tableData.length"
+                                                :filterable="true" :remote="true" :buttonIf="false"
+                                                placeholder="请选择对账单位"
+                                                :forParameter="{ key: 'id', label: 'cnName', value: 'cnName' }"
+                                                @corpChange="corpChange($event, 'corpCnName')"
+                                                @remoteMethod="corpBcorpsListfun" @corpFocus="corpBcorpsListfun">
+                                            </search-query>
+                                        </el-form-item>
+                                    </el-col>
+                                    <el-col :span="4">
+                                        <el-form-item label="对账日期" prop="billDate"
+                                            :rules="[{ required: true, message: '', trigger: 'blur' }]">
+                                            <el-date-picker v-model="form.billDate" clearable style="width: 100%;"
+                                                type="date" size="small" :disabled="editSave || tableData.length"
+                                                format="yyyy-MM-dd" value-format="yyyy-MM-dd" placeholder="选择对账日期">
+                                            </el-date-picker>
                                         </el-form-item>
                                     </el-col>
                                     <el-col :span="6">
@@ -418,8 +411,9 @@
 -->
 
                     <el-card style="margin-top: 10px">
-                        <finstlbillsitems ref="billsItem" :tableData="tableData" :form="form" :handleSelectionData="handleSelectionData"
-                            :brfalse="!editSave" @handleSelectionChange="handleSelectionChange">
+                        <finstlbillsitems ref="billsItem" :tableData="tableData" :form="form"
+                            :handleSelectionData="handleSelectionData" :brfalse="!editSave"
+                            @handleSelectionChange="handleSelectionChange">
                             <template slot="menuLeft">
                                 <div>
                                     <!-- <el-button size="small" type="info" style="margin-right: 8px" :disabled="editSave"
@@ -438,7 +432,7 @@
                                         :disabled="editSave" :loading="saveLoading" @click="Notinvoicingfun">取消禁止开票
                                     </el-button>-->
                                     <span style="font-size: 18px;font-weight: 600;margin-left: 10px;">
-                                        <span style="color:#F56C6C;">总行数:{{ tableData.length}}</span>
+                                        <span style="color:#F56C6C;">总行数:{{ tableData.length }}</span>
                                         <span style="color: #67C23A;margin-right: 10px;">
                                             本币:{{ amountSubSum }}元
                                         </span>
@@ -811,91 +805,95 @@ export default {
         },
         // 保存
         editCustomer(type) {
-            // 对账单位
-            if (!this.form.corpId) {
-                this.$message.warning('请选择对账单位');
-                return
-            }
-            // if (!this.form.id) {
-            //     // 是否选择从表数据
-            //     if (this.handleSelectionData.length == 0) {
-            //         this.$message.warning('请选择对账数据');
-            //         return;
-            //     }
-            // }
-            // for (let item of this.handleSelectionData) {
-            //     if (!item.currentStlCurCode) {
-            //         this.$message.warning('请选择本次结算币种');
-            //         return;
-            //     }
-            // }
-            this.form.billNoFormat = 'HYDZ'
-            this.form.businessTypeCode = 'HYDZ'
-            this.form.businessType = 'CHK' // 对账单
-            this.form.businessTypes = this.form.businessTypes ? this.form.businessTypes.join(',') : '' // 业务类型
-            this.form.accountDateFrom = this.form.accountDateFrom ? this.form.accountDateFrom.slice(0, 10) + ' 00:00:00' : null // 财务开始日期
-            this.form.accountDateTo = this.form.accountDateTo ? this.form.accountDateTo.slice(0, 10) + ' 00:00:00' : null // 财务开始日期
-            this.form.auditDateFrom = this.form.auditDateFrom ? this.form.auditDateFrom.slice(0, 10) + ' 00:00:00' : null
-            this.form.auditDateTo = this.form.auditDateTo ? this.form.auditDateTo.slice(0, 10) + ' 00:00:00' : null
-            this.form.businessDateEnd = this.form.businessDateEnd ? this.form.businessDateEnd.slice(0, 10) + ' 00:00:00' : null
-            this.form.businessDateStart = this.form.businessDateStart ? this.form.businessDateStart.slice(0, 10) + ' 00:00:00' : null
-            this.form.billDate = this.form.billDate ? this.form.billDate.slice(0, 10) + ' 00:00:00' : null
-            this.form.feeCnName = Array.isArray(this.form.feeCnName) ? this.form.feeCnName.join(',') : this.form.feeCnName
-            if (!this.form.id) {
-                this.form.finStlBillsItemsList = this.tableData.map((item, index) => {
-                    item.lineNo = Number(index) + 1
-                    item.pType = item.businessType
-                    item.accDate = item.billDate
-                    if (item.currentStlCurCode == this.getLocalCurrency()) {
-                        item.currentStlAmount = item.currentStlAmountRMB
-                    } else {
-                        item.currentStlAmount = item.currentStlAmountUSD
-                    }
-                    // delete item.businessType
-                    if (!this.form.id) {
-                        delete item.id
-                    }
-                    delete item.accountDc
-                    return item
-                })
-            } else {
-                this.form.finStlBillsItemsList = this.form.finStlBillsItemsList.map((item, index) => {
-                    if (item.currentStlCurCode == this.getLocalCurrency()) {
-                        item.currentStlAmount = item.currentStlAmountRMB
-                    } else {
-                        item.currentStlAmount = item.currentStlAmountUSD
-                    }
-                    return item
-                })
-            }
-            this.saveLoading = true // 加载动画
-            this.pageLoading = true
-            // 判断是单独点击保存还是点击确认对账
-            if (type == 'toAddEdit') {
-                finstlbillsSubmit(this.form).then(res => {
-                    this.$message.success('操作成功');
-                    this.$emit(type)
-                }).finally(() => {
-                    this.pageLoading = false
-                    this.saveLoading = false
-                })
-            } else if (type == '对账') {
-                finstlbillsSubmit(this.form).then(res => {
-                    this.form = res.data.data
-                    this.finstlbillsConfirmReconciliationfun()
-                }).catch(() => {
-                    this.pageLoading = false
-                    this.saveLoading = false
-                })
-            } else {
-                finstlbillsSubmit(this.form).then(res => {
-                    this.$message.success('操作成功');
-                    this.finstlbillsDetailfun(res.data.data.id)
-                }).finally(() => {
-                    this.pageLoading = false
-                    this.saveLoading = false
-                })
-            }
+            this.$refs.form.validate((valid) => {
+                if (!valid) return
+                // 对账单位
+                if (!this.form.corpId) {
+                    this.$message.warning('请选择对账单位');
+                    return
+                }
+                // if (!this.form.id) {
+                //     // 是否选择从表数据
+                //     if (this.handleSelectionData.length == 0) {
+                //         this.$message.warning('请选择对账数据');
+                //         return;
+                //     }
+                // }
+                // for (let item of this.handleSelectionData) {
+                //     if (!item.currentStlCurCode) {
+                //         this.$message.warning('请选择本次结算币种');
+                //         return;
+                //     }
+                // }
+                this.form.billNoFormat = 'HYDZ'
+                this.form.businessTypeCode = 'HYDZ'
+                this.form.businessType = 'CHK' // 对账单
+                this.form.businessTypes = this.form.businessTypes ? this.form.businessTypes.join(',') : '' // 业务类型
+                this.form.accountDateFrom = this.form.accountDateFrom ? this.form.accountDateFrom.slice(0, 10) + ' 00:00:00' : null // 财务开始日期
+                this.form.accountDateTo = this.form.accountDateTo ? this.form.accountDateTo.slice(0, 10) + ' 00:00:00' : null // 财务开始日期
+                this.form.auditDateFrom = this.form.auditDateFrom ? this.form.auditDateFrom.slice(0, 10) + ' 00:00:00' : null
+                this.form.auditDateTo = this.form.auditDateTo ? this.form.auditDateTo.slice(0, 10) + ' 00:00:00' : null
+                this.form.businessDateEnd = this.form.businessDateEnd ? this.form.businessDateEnd.slice(0, 10) + ' 00:00:00' : null
+                this.form.businessDateStart = this.form.businessDateStart ? this.form.businessDateStart.slice(0, 10) + ' 00:00:00' : null
+                this.form.billDate = this.form.billDate ? this.form.billDate.slice(0, 10) + ' 00:00:00' : null
+                this.form.feeCnName = Array.isArray(this.form.feeCnName) ? this.form.feeCnName.join(',') : this.form.feeCnName
+                if (!this.form.id) {
+                    this.form.finStlBillsItemsList = this.tableData.map((item, index) => {
+                        item.lineNo = Number(index) + 1
+                        item.pType = item.businessType
+                        item.accDate = item.billDate
+                        if (item.currentStlCurCode == this.getLocalCurrency()) {
+                            item.currentStlAmount = item.currentStlAmountRMB
+                        } else {
+                            item.currentStlAmount = item.currentStlAmountUSD
+                        }
+                        // delete item.businessType
+                        if (!this.form.id) {
+                            delete item.id
+                        }
+                        delete item.accountDc
+                        return item
+                    })
+                } else {
+                    this.form.finStlBillsItemsList = this.form.finStlBillsItemsList.map((item, index) => {
+                        if (item.currentStlCurCode == this.getLocalCurrency()) {
+                            item.currentStlAmount = item.currentStlAmountRMB
+                        } else {
+                            item.currentStlAmount = item.currentStlAmountUSD
+                        }
+                        return item
+                    })
+                }
+                this.saveLoading = true // 加载动画
+                this.pageLoading = true
+                // 判断是单独点击保存还是点击确认对账
+                if (type == 'toAddEdit') {
+                    finstlbillsSubmit(this.form).then(res => {
+                        this.$message.success('操作成功');
+                        this.$emit(type)
+                    }).finally(() => {
+                        this.pageLoading = false
+                        this.saveLoading = false
+                    })
+                } else if (type == '对账') {
+                    finstlbillsSubmit(this.form).then(res => {
+                        this.form = res.data.data
+                        this.finstlbillsConfirmReconciliationfun()
+                    }).catch(() => {
+                        this.pageLoading = false
+                        this.saveLoading = false
+                    })
+                } else {
+                    finstlbillsSubmit(this.form).then(res => {
+                        this.$message.success('操作成功');
+                        this.finstlbillsDetailfun(res.data.data.id)
+                    }).finally(() => {
+                        this.pageLoading = false
+                        this.saveLoading = false
+                    })
+                }
+            });
+
         },
         newbillFun() {
             if (this.submitType) {

+ 22 - 1
src/views/iosBasicData/finstlbills/index.vue

@@ -172,7 +172,28 @@ export default {
             format: "yyyy-MM-dd",
             valueFormat: "yyyy-MM-dd HH:mm:ss",
           },
-
+ {
+            label: "对账开始日期",
+            prop: "billDateStart",
+            search: true,
+            overHidden: true,
+            hide: true,
+            searchLabelWidth: "100",
+            type: "date",
+            format: "yyyy-MM-dd",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
+          },
+          {
+            label: "对账结束日期",
+            prop: "billDateEnd",
+            search: true,
+            overHidden: true,
+            hide: true,
+            searchLabelWidth: "100",
+            type: "date",
+            format: "yyyy-MM-dd",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
+          },
           {
             label: "客户英文名称",
             prop: "corpEnName",

+ 1 - 0
src/views/iosBasicData/overdueFee/detailsPage.vue

@@ -299,6 +299,7 @@ export default {
             overHidden: true,
           }]
       },
+      saberUserInfo: JSON.parse(localStorage.getItem('saber-userInfo')).content, // 当前登录人个人信息
     }
   },
   components: {

+ 1 - 0
src/views/ow/contract/detailsPage.vue

@@ -148,6 +148,7 @@ export default {
   name: "detailsPage",
   data() {
     return {
+      saberUserInfo: JSON.parse(localStorage.getItem('saber-userInfo')).content, // 当前登录人个人信息
       rtDialog: false,
       itemCIds: null,
       feeType: null,

+ 184 - 75
src/views/ow/owPut/detailsPage.vue

@@ -234,11 +234,14 @@
           <avue-crud :option="pickOption" :data="pickData" id="out-table" ref="crud5"
             :header-cell-class-name="headerClassName" :row-style="{ height: '20px' }" :cell-style="{ padding: '0px' }"
             :search.sync="pickSearch" @search-change="searchChange" @search-reset="searchReset"
-             @selection-change="pickChange"@resetColumn="resetColumn('crud5', 'pickOption', 'pickOptionBack', 518)"
+            @selection-change="pickChange" @resetColumn="resetColumn('crud5', 'pickOption', 'pickOptionBack', 518)"
             @saveColumn="saveColumn('crud5', 'pickOption', 'pickOptionBack', 518)">
             <template slot="menuLeft">
               <el-button type="info" plain size="small" :disabled="editDisabled || selecPickList.length == 0"
                 @click="allClick('合并生成')">合并生成费用</el-button>
+              <el-button type="danger" plain size="small" :disabled="editDisabled || selecPickList.length == 0"
+                @click="allClick('撤销生成')">撤销生成费用</el-button>
+              <el-button type="warning" plain size="small" @click="allClick('批量导入费用')">批量导入费用</el-button>
             </template>
           </avue-crud>
         </el-tab-pane>
@@ -251,6 +254,12 @@
             <template slot="menuLeft">
               <el-button type="info" plain size="small" :disabled="editDisabled || selecPerList.length == 0"
                 @click="allClick('合并生成2')">合并生成费用</el-button>
+              <el-button type="danger" plain size="small" :disabled="editDisabled || selecPerList.length == 0"
+                @click="allClick('撤销生成2')">撤销生成费用</el-button>
+              <el-button type="success" plain size="small" @click="allClick('生成租金')"
+                :disabled="form.tradingBoxItemsList.length == 0">生成租金</el-button>
+              <el-button type="danger" plain size="small" @click="allClick('撤销租金')"
+                :disabled="form.tradingBoxItemsList.length == 0">撤销租金</el-button>
             </template>
           </avue-crud>
         </el-tab-pane>
@@ -272,15 +281,10 @@
                 <el-button type="info" plain size="small" @click="allClick('D费用一键编辑')">一键编辑</el-button>
                 <el-button type="danger" plain size="small" :disabled="selectionfeedList.length == 0"
                   @click="allClick('D费用批量删除')">批量删除</el-button>
-                <el-button type="success" plain size="small" @click="allClick('生成租金')"
-                  :disabled="form.tradingBoxItemsList.length == 0">生成租金</el-button>
-                <el-button type="danger" plain size="small" @click="allClick('撤销租金')"
-                  :disabled="form.tradingBoxItemsList.length == 0">撤销租金</el-button>
                 <el-button type="primary" plain size="small"
                   :disabled="(selectionfeedList.length == 0 && selectionfeecList.length == 0)"
                   @click="allClick('D费用申请')">请核费用</el-button>
                 <!-- <el-button type="primary" plain size="small" :disabled="editDisabled">计算超期箱使费</el-button> -->
-                <el-button type="warning" plain size="small" @click="allClick('批量导入费用')">批量导入费用</el-button>
                 <!-- <el-button type="primary" plain size="small" @click="$refs.printC.openDialog()">打印账单</el-button> -->
               </template>
               <template slot="indexHeader" slot-scope="{row,index}">
@@ -641,14 +645,15 @@ import {
   getAccurate,
   synchronousPutBoxData,
   feeList,
-  mergeGenerateCost
+  bfeesList,
+  mergeGenerateCost,
+  revokeMergeGenerateCost
 } from "@/api/boxManagement/buyContainer";
 import dicSelect from "@/components/dicSelect/main";
 import containerNumber from "@/components/dicSelect/containerNumber";
 import checkSchedule from "@/components/checkH/checkSchedule.vue";
 import businessReports from "@/components/boxManagement/businessReports.vue";
 import reports from "@/components/boxManagement/reports.vue";
-import { bfeesList } from "@/api/iosBasicData/bfees";
 import {
   dateFormat
 } from "@/util/date";
@@ -666,6 +671,7 @@ export default {
   name: "detailsPage",
   data() {
     return {
+      saberUserInfo: JSON.parse(localStorage.getItem('saber-userInfo')).content, // 当前登录人个人信息
       selecPickList: [],
       selecPerList: [],
       pickSearch: {},
@@ -1507,6 +1513,19 @@ export default {
         menu: false,
         column: [
           {
+            label: "是否生成",
+            prop: "whetherGenerateCost",
+            overHidden: true,
+            type: 'select',
+            dicData: [{
+              label: '否',
+              value: '0'
+            }, {
+              label: '是',
+              value: '1'
+            }]
+          },
+          {
             label: "Customer",
             prop: "corpCnName",
             overHidden: true
@@ -1580,6 +1599,19 @@ export default {
         menu: false,
         column: [
           {
+            label: "是否生成",
+            prop: "whetherGenerateCost",
+            overHidden: true,
+            type: 'select',
+            dicData: [{
+              label: '否',
+              value: '0'
+            }, {
+              label: '是',
+              value: '1'
+            }]
+          },
+          {
             label: "Customer",
             prop: "corpCnName",
             overHidden: true
@@ -3296,6 +3328,7 @@ export default {
             countRent(obj).then(res => {
               this.$message.success("操作成功!");
               this.getDetail(this.form.id)
+              this.getPer()
             }).finally(() => {
               loading.close();
             })
@@ -3320,6 +3353,7 @@ export default {
           }).then(res => {
             this.$message.success("操作成功!");
             this.getDetail(this.form.id)
+            this.getPer()
           }).finally(() => {
             loading.close();
           })
@@ -3408,76 +3442,117 @@ export default {
       }
       if (name == '批量导入费用') {
         this.checkRate(null, this.form.effectiveDate, null, 1, this.deptId)
-        this.$confirm('是否批量导入费用?', '提示', {
-          confirmButtonText: '确定',
-          cancelButtonText: '取消',
-          type: 'warning'
-        }).then(() => {
-          console.log(this.form.dc)
-          if (this.form.dc == 'd') {
-            bfeesList(1, 10, { cnName: 'Pickup fee' }).then(res => {
-              res.data.data.records.forEach(item => {
-                if (item.cnName == 'Pickup fee') {
-                  this.form.tradingBoxItemsList.forEach(e => {
-                    this.feeCenterListD.push({
-                      pid: this.form.id,
-                      feesType: 1,
-                      dc: 'D',
-                      billType: '箱东',
-                      corpId: this.form.purchaseCompanyId,
-                      shortName: this.form.purchaseCompanyName,
-                      corpCnName: this.form.purchaseCompanyName,
-                      cntrNo: e.code,
-                      unitNo: e.boxType,
-                      curCode: item.curNo,
-                      exrate: this.getExchangeRate(item.curNo, 'D', 1),
-                      feeId: item.id,
-                      feeCode: item.code,
-                      feeCnName: item.cnName,
-                      price: this.form.pickupFee,
-                      quantity: 1,
-                      amountCNY: item.curNo == this.getLocalCurrency() ? this.form.pickupFee : 0,
-                      amountUSD: item.curNo != this.getLocalCurrency() ? this.form.pickupFee : 0,
-                      $cellEdit: true
-                    })
-                  })
-                }
-              })
-            })
-
-          } else {
-            bfeesList(1, 10, { cnName: 'Pickup fee' }).then(res => {
-              res.data.data.records.forEach(item => {
-                if (item.cnName == 'Pickup fee') {
-                  this.form.tradingBoxItemsList.forEach(e => {
-                    this.feeCenterListC.push({
-                      pid: this.form.id,
-                      feesType: 1,
-                      dc: 'C',
-                      billType: '箱东',
-                      corpId: this.form.purchaseCompanyId,
-                      shortName: this.form.purchaseCompanyName,
-                      corpCnName: this.form.purchaseCompanyName,
-                      cntrNo: e.code,
-                      unitNo: e.boxType,
-                      curCode: item.curNo,
-                      exrate: this.getExchangeRate(item.curNo, 'C', 1),
-                      feeId: item.id,
-                      feeCode: item.code,
-                      feeCnName: item.cnName,
-                      price: this.form.pickupFee,
-                      quantity: 1,
-                      amountCNY: item.curNo == this.getLocalCurrency() ? this.form.pickupFee : 0,
-                      amountUSD: item.curNo != this.getLocalCurrency() ? this.form.pickupFee : 0,
-                      $cellEdit: true
-                    })
-                  })
-                }
-              })
-
+        this.$DialogForm.show({
+          title: 'OW批量导入费用',
+          width: '30%',
+          // data: this.assemblyForm.hmmEdi,
+          menuPosition: 'right',
+          option: {
+            submitText: '确定',
+            emptyText: '取消',
+            // labelWidth: 130,
+            column: [
+              {
+                label: "账期",
+                span: 24,
+                prop: "accountDate",
+                type: 'month',
+                format: 'yyyy-MM',
+                valueFormat: 'yyyy-MM',
+                rules: [{
+                  required: true,
+                  message: "选择场站",
+                  trigger: "blur",
+                }],
+              },
+            ]
+          },
+          beforeClose: (done) => {
+            done()
+          },
+          callback: (res) => {
+            res.done()
+            let obj = {
+              accountDate: res.data.accountDate + '-01 00:00:00',
+              id: this.form.id
+            }
+            bfeesList(obj).then(res => {
+              this.$message.success("操作成功!");
+              this.getPick()
             })
+            res.close()
           }
         })
+        // this.$confirm('是否批量导入费用?', '提示', {
+        //   confirmButtonText: '确定',
+        //   cancelButtonText: '取消',
+        //   type: 'warning'
+        // }).then(() => {
+        //   console.log(this.form.dc)
+        //   if (this.form.dc == 'd') {
+        //     bfeesList(1, 10, { cnName: 'Pickup fee' }).then(res => {
+        //       res.data.data.records.forEach(item => {
+        //         if (item.cnName == 'Pickup fee') {
+        //           this.form.tradingBoxItemsList.forEach(e => {
+        //             this.feeCenterListD.push({
+        //               pid: this.form.id,
+        //               feesType: 1,
+        //               dc: 'D',
+        //               billType: '箱东',
+        //               corpId: this.form.purchaseCompanyId,
+        //               shortName: this.form.purchaseCompanyName,
+        //               corpCnName: this.form.purchaseCompanyName,
+        //               cntrNo: e.code,
+        //               unitNo: e.boxType,
+        //               curCode: item.curNo,
+        //               exrate: this.getExchangeRate(item.curNo, 'D', 1),
+        //               feeId: item.id,
+        //               feeCode: item.code,
+        //               feeCnName: item.cnName,
+        //               price: this.form.pickupFee,
+        //               quantity: 1,
+        //               amountCNY: item.curNo == this.getLocalCurrency() ? this.form.pickupFee : 0,
+        //               amountUSD: item.curNo != this.getLocalCurrency() ? this.form.pickupFee : 0,
+        //               $cellEdit: true
+        //             })
+        //           })
+        //         }
+        //       })
+        //     })
+
+        //   } else {
+        //     bfeesList(1, 10, { cnName: 'Pickup fee' }).then(res => {
+        //       res.data.data.records.forEach(item => {
+        //         if (item.cnName == 'Pickup fee') {
+        //           this.form.tradingBoxItemsList.forEach(e => {
+        //             this.feeCenterListC.push({
+        //               pid: this.form.id,
+        //               feesType: 1,
+        //               dc: 'C',
+        //               billType: '箱东',
+        //               corpId: this.form.purchaseCompanyId,
+        //               shortName: this.form.purchaseCompanyName,
+        //               corpCnName: this.form.purchaseCompanyName,
+        //               cntrNo: e.code,
+        //               unitNo: e.boxType,
+        //               curCode: item.curNo,
+        //               exrate: this.getExchangeRate(item.curNo, 'C', 1),
+        //               feeId: item.id,
+        //               feeCode: item.code,
+        //               feeCnName: item.cnName,
+        //               price: this.form.pickupFee,
+        //               quantity: 1,
+        //               amountCNY: item.curNo == this.getLocalCurrency() ? this.form.pickupFee : 0,
+        //               amountUSD: item.curNo != this.getLocalCurrency() ? this.form.pickupFee : 0,
+        //               $cellEdit: true
+        //             })
+        //           })
+        //         }
+        //       })
+
+        //     })
+        //   }
+        // })
       }
       if (name == '批量修改POD场站') {
         this.podForm = {}
@@ -3496,6 +3571,23 @@ export default {
         mergeGenerateCost(obj).then(res => {
           this.$message.success("操作成功");
           this.getDetail(this.form.id)
+          this.getPick()
+        })
+      }
+      if (name == '撤销生成') {
+        for (let item of this.selecPickList) {
+          if (item.whetherGenerateCost == 0) {
+            return this.$message.error("请选择已生成明细");
+          }
+        }
+        let obj = {
+          id: this.form.id,
+          feeCenterItemsList: this.selecPickList
+        }
+        revokeMergeGenerateCost(obj).then(res => {
+          this.$message.success("操作成功");
+          this.getDetail(this.form.id)
+          this.getPick()
         })
       }
       if (name == '合并生成2') {
@@ -3511,6 +3603,23 @@ export default {
         mergeGenerateCost(obj).then(res => {
           this.$message.success("操作成功");
           this.getDetail(this.form.id)
+          this.getPer()
+        })
+      }
+      if (name == '撤销生成2') {
+        for (let item of this.selecPickList) {
+          if (item.whetherGenerateCost == 0) {
+            return this.$message.error("请选择已生成明细");
+          }
+        }
+        let obj = {
+          id: this.form.id,
+          feeCenterItemsList: this.selecPerList
+        }
+        revokeMergeGenerateCost(obj).then(res => {
+          this.$message.success("操作成功");
+          this.getDetail(this.form.id)
+          this.getPer()
         })
       }
     },

+ 82 - 9
src/views/ow/owTask/detailsPage.vue

@@ -229,6 +229,9 @@
             <template slot="menuLeft">
               <el-button type="info" plain size="small" :disabled="editDisabled || selecPickList.length == 0"
                 @click="allClick('合并生成')">合并生成费用</el-button>
+              <el-button type="danger" plain size="small" :disabled="editDisabled || selecPickList.length == 0"
+                @click="allClick('撤销生成')">撤销生成费用</el-button>
+              <el-button type="warning" plain size="small" @click="allClick('批量导入费用')">批量导入费用</el-button>
             </template>
           </avue-crud>
         </el-tab-pane>
@@ -241,6 +244,12 @@
             <template slot="menuLeft">
               <el-button type="info" plain size="small" :disabled="editDisabled || selecPerList.length == 0"
                 @click="allClick('合并生成2')">合并生成费用</el-button>
+              <el-button type="danger" plain size="small" :disabled="editDisabled || selecPerList.length == 0"
+                @click="allClick('撤销生成2')">撤销生成费用</el-button>
+              <el-button type="success" plain size="small" @click="allClick('生成箱使费')"
+                :disabled="form.tradingBoxItemsList.length == 0">生成箱使费</el-button>
+              <el-button type="danger" plain size="small" @click="allClick('撤销箱使费')"
+                :disabled="form.tradingBoxItemsList.length == 0">撤销箱使费</el-button>
             </template>
           </avue-crud>
         </el-tab-pane>
@@ -263,7 +272,6 @@
                 <el-button type="danger" plain size="small" :disabled="selectionfeedList.length == 0"
                   @click="allClick('D费用批量删除')">批量删除</el-button>
                 <!-- <el-button type="primary" plain size="small" :disabled="editDisabled">计算超期箱使费</el-button> -->
-                <el-button type="warning" plain size="small" @click="allClick('批量导入费用')">批量导入费用</el-button>
                 <el-button type="primary" plain size="small" :disabled="selectionfeedList.length == 0"
                   @click="allClick('D发票申请')">发票申请</el-button>
                 <el-button type="primary" plain size="small" :disabled="selectionfeedList.length"
@@ -359,10 +367,6 @@
                 <el-button type="info" plain size="small" @click="allClick('C费用一键编辑')">一键编辑</el-button>
                 <el-button type="danger" plain size="small" :disabled="selectionfeecList.length == 0"
                   @click="allClick('C费用批量删除')">批量删除</el-button>
-                <el-button type="success" plain size="small" @click="allClick('生成箱使费')"
-                  :disabled="form.tradingBoxItemsList.length == 0">生成箱使费</el-button>
-                <el-button type="danger" plain size="small" @click="allClick('撤销箱使费')"
-                  :disabled="form.tradingBoxItemsList.length == 0">撤销箱使费</el-button>
                 <el-button type="primary" plain size="small" :disabled="selectionfeecList.length == 0"
                   @click="allClick('C付费申请')">付费申请</el-button>
                 <el-button type="primary" plain size="small" :disabled="selectionfeedList.length"
@@ -642,7 +646,8 @@ import {
   revokeCheckPleaseVerifyCost,
   feeList,
   bfeesList,
-  mergeGenerateCost
+  mergeGenerateCost,
+  revokeMergeGenerateCost
 } from "@/api/boxManagement/buyContainer";
 import dicSelect from "@/components/dicSelect/main";
 import checkSchedule from "@/components/checkH/checkSchedule.vue";
@@ -657,6 +662,7 @@ export default {
   name: "detailsPage",
   data() {
     return {
+      saberUserInfo: JSON.parse(localStorage.getItem('saber-userInfo')).content, // 当前登录人个人信息
       selecPickList: [],
       selecPerList: [],
       pickSearch: {},
@@ -1758,7 +1764,22 @@ export default {
         refreshBtn: false,
         align: 'center',
         menu: false,
+        tip: false,
+        selection: true,
         column: [
+             {
+            label: "是否生成",
+            prop: "whetherGenerateCost",
+            overHidden: true,
+            type: 'select',
+            dicData: [{
+              label: '否',
+              value: '0'
+            }, {
+              label: '是',
+              value: '1'
+            }]
+          },
           {
             label: "Customer",
             prop: "corpCnName",
@@ -1831,7 +1852,22 @@ export default {
         refreshBtn: false,
         align: 'center',
         menu: false,
+        tip: false,
+        selection: true,
         column: [
+             {
+            label: "是否生成",
+            prop: "whetherGenerateCost",
+            overHidden: true,
+            type: 'select',
+            dicData: [{
+              label: '否',
+              value: '0'
+            }, {
+              label: '是',
+              value: '1'
+            }]
+          },
           {
             label: "Customer",
             prop: "corpCnName",
@@ -3239,6 +3275,7 @@ export default {
             countRent(obj).then(res => {
               this.$message.success("操作成功!");
               this.getDetail(this.form.id)
+              this.getPer()
             }).finally(() => {
               loading.close();
             })
@@ -3261,6 +3298,7 @@ export default {
           revokeCountRent({ id: this.form.id }).then(res => {
             this.$message.success("操作成功!");
             this.getDetail(this.form.id)
+            this.getPer()
           }).finally(() => {
             loading.close();
           })
@@ -3532,6 +3570,7 @@ export default {
             }
             bfeesList(obj).then(res => {
               this.$message.success("操作成功!");
+              this.getPick()
             })
             res.close()
           }
@@ -3618,7 +3657,7 @@ export default {
       if (name == '合并生成') {
         for (let item of this.selecPickList) {
           if (item.whetherGenerateCost == 1) {
-            return this.$message.error("请选择生成明细");
+            return this.$message.error("请选择生成明细");
           }
         }
         let obj = {
@@ -3628,12 +3667,29 @@ export default {
         mergeGenerateCost(obj).then(res => {
           this.$message.success("操作成功");
           this.getDetail(this.form.id)
+          this.getPick()
         })
       }
-      if (name == '合并生成2') {
+      if (name == '撤销生成') {
         for (let item of this.selecPickList) {
+          if (item.whetherGenerateCost == 0) {
+            return this.$message.error("请选择已生成明细");
+          }
+        }
+        let obj = {
+          id: this.form.id,
+          feeCenterItemsList: this.selecPickList
+        }
+        revokeMergeGenerateCost(obj).then(res => {
+          this.$message.success("操作成功");
+          this.getDetail(this.form.id)
+          this.getPick()
+        })
+      }
+      if (name == '合并生成2') {
+        for (let item of this.selecPerList) {
           if (item.whetherGenerateCost == 1) {
-            return this.$message.error("请选择生成明细");
+            return this.$message.error("请选择生成明细");
           }
         }
         let obj = {
@@ -3643,6 +3699,23 @@ export default {
         mergeGenerateCost(obj).then(res => {
           this.$message.success("操作成功");
           this.getDetail(this.form.id)
+          this.getPer()
+        })
+      }
+      if (name == '撤销生成2') {
+        for (let item of this.selecPerList) {
+          if (item.whetherGenerateCost == 0) {
+            return this.$message.error("请选择已生成明细");
+          }
+        }
+        let obj = {
+          id: this.form.id,
+          feeCenterItemsList: this.selecPerList
+        }
+        revokeMergeGenerateCost(obj).then(res => {
+          this.$message.success("操作成功");
+          this.getDetail(this.form.id)
+          this.getPer()
         })
       }
     },