caojunjie 1 год назад
Родитель
Сommit
2c3c2f67c4

+ 31 - 2
src/api/iosBasicData/bills.js

@@ -1,5 +1,5 @@
 import request from '@/router/axios';
-
+// 列表
 export const billsList = (current, size, params) => {
   return request({
     url: '/api/blade-los/bills/list',
@@ -11,6 +11,14 @@ export const billsList = (current, size, params) => {
     }
   })
 }
+// 不分页的列表
+export const billsListAll = (params) => {
+  return request({
+    url: '/api/blade-los/bills/listAll',
+    method: 'get',
+    params: params
+  })
+}
 // 申请B/L NO 接口
 export const billsGetBillNo = (data) => {
   return request({
@@ -47,4 +55,25 @@ export const billsSubmit = (row) => {
     data: row
   })
 }
-
+// 添加到主单
+export const billsIncreaseReinsurancePolicy = (ids,id) => {
+  return request({
+    url: '/api/blade-los/bills/increaseReinsurancePolicy',
+    method: 'post',
+    params: {
+      ids,
+      id,
+    }
+  })
+}
+// 主单撤销
+export const billsRevokeReinsurancePolicy = (ids,id) => {
+  return request({
+    url: '/api/blade-los/bills/revokeReinsurancePolicy',
+    method: 'post',
+    params: {
+      ids,
+      id,
+    }
+  })
+}

+ 4 - 0
src/enums/column-name.js

@@ -1365,6 +1365,10 @@ const columnName = [{
     code: 308,
     name: '货运代理-财务管理-结算周期'
   },
+  {
+    code: 309,
+    name: '货运代理-海运出口'
+  },
 ]
 export const getColumnName = (key) => {
   for (let index = 0; index < columnName.length; index++) {

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

@@ -2709,4 +2709,18 @@ export default [{
     component: () => import( /* webpackChunkName: "views" */ '@/views/tirePartsMall/statisticAnalysis/supplierTransactions/index')
   }]
 },
+  {
+    path: '/iosBasicData/SeafreightExportF/bills/index',
+    component: Layout,
+    hidden: true,
+    children: [{
+      path: '/iosBasicData/SeafreightExportF/bills/index',
+      name: '海运出口(F)',
+      meta: {
+        i18n: '/iosBasicData/SeafreightExportF/bills/index',
+        keepAlive: true,
+      },
+      component: () => import( /* webpackChunkName: "views" */ '@/views/iosBasicData/SeafreightExportF/bills/index.vue')
+    }]
+  },
 ]

+ 3 - 0
src/views/iosBasicData/SeafreightExportF/bills/assembly/DistributionBox/PackingBusiness.vue

@@ -180,4 +180,7 @@
     .tbasTop {
         margin: 10px 0;
     }
+    ::v-deep.el-table td, .el-table th {
+        padding: 5px 0;
+    }
 </style>

+ 8 - 8
src/views/iosBasicData/SeafreightExportF/bills/assembly/EntrustmentLnformation.vue

@@ -313,7 +313,7 @@
                                               :remote="true"
                                               :disabled="detailData.seeDisabled"
                                               :buttonIf="false"
-                                              :forParameter="{key:'id',label:'enName',value:'enName'}"
+                                              :forParameter="{key:'id',label:'cnName',value:'cnName'}"
                                               @remoteMethod="remoteMethod($event,'placeReceipt')"
                                               @corpChange="corpChange($event,'placeReceipt')" >
                                 </search-query>
@@ -337,7 +337,7 @@
                                               :remote="true"
                                               :disabled="detailData.seeDisabled"
                                               :buttonIf="false"
-                                              :forParameter="{key:'id',label:'enName',value:'enName'}"
+                                              :forParameter="{key:'id',label:'cnName',value:'cnName'}"
                                               @remoteMethod="remoteMethod($event,'pol')"
                                               @corpChange="corpChange($event,'pol')" >
                                 </search-query>
@@ -361,7 +361,7 @@
                                               :remote="true"
                                               :disabled="detailData.seeDisabled"
                                               :buttonIf="false"
-                                              :forParameter="{key:'id',label:'enName',value:'enName'}"
+                                              :forParameter="{key:'id',label:'cnName',value:'cnName'}"
                                               @remoteMethod="remoteMethod($event,'pod')"
                                               @corpChange="corpChange($event,'pod')" >
                                 </search-query>
@@ -385,7 +385,7 @@
                                               :remote="true"
                                               :disabled="detailData.seeDisabled"
                                               :buttonIf="false"
-                                              :forParameter="{key:'id',label:'enName',value:'enName'}"
+                                              :forParameter="{key:'id',label:'cnName',value:'cnName'}"
                                               @remoteMethod="remoteMethod($event,'destination')"
                                               @corpChange="corpChange($event,'destination')" >
                                 </search-query>
@@ -409,7 +409,7 @@
                                               :remote="true"
                                               :disabled="detailData.seeDisabled"
                                               :buttonIf="false"
-                                              :forParameter="{key:'id',label:'enName',value:'enName'}"
+                                              :forParameter="{key:'id',label:'cnName',value:'cnName'}"
                                               @remoteMethod="remoteMethod($event,'placeDelivery')"
                                               @corpChange="corpChange($event,'placeDelivery')" >
                                 </search-query>
@@ -790,7 +790,7 @@ import {blinesList} from "@/api/iosBasicData/blines";
                 // 有中文名称的港口
                 else if (cnPorArr.indexOf(name) != -1) {
                     for(let item of this[name + 'Data']) {
-                        if (item.enName == value) {
+                        if (item.cnName == value) {
                             this.$set(this.assemblyForm,name + 'Id',item.id)
                             this.$set(this.assemblyForm,name + 'CnName',item.cnName)
                             this.$set(this.assemblyForm,name + 'EnName',item.enName)
@@ -802,9 +802,9 @@ import {blinesList} from "@/api/iosBasicData/blines";
                 // 没有中文名的港口
                 else if (portArr.indexOf(name) != -1) {
                     for(let item of this[name + 'Data']) {
-                        if (item.enName == value) {
+                        if (item.cnName == value) {
                             this.$set(this.assemblyForm,name + 'Id',item.id)
-                            this.$set(this.assemblyForm,name + 'Name',item.enName)
+                            this.$set(this.assemblyForm,name + 'Name',item.cnName)
                             this.$set(this.assemblyForm,name + 'Code',item.code)
                             this.$set(this.assemblyForm,name + 'NamePrint',item.enName)
                         }

+ 161 - 0
src/views/iosBasicData/SeafreightExportF/bills/assembly/SplitList.vue

@@ -0,0 +1,161 @@
+<template>
+    <div>
+        <avue-crud :table-loading="loading" :option="option" :data="data"
+                   @selection-change="selectionChange">
+            <template slot-scope="scope" slot="menuLeft">
+                <el-button v-if="!typeMenu" type="danger"
+                           size="small"
+                           icon="el-icon-delete"
+                           plain
+                           @click="batchWithdrawfun">批量撤回
+                </el-button>
+            </template>
+            <template slot-scope="scope" slot="menu">
+                <el-button :type="scope.type" :size="scope.size" icon="el-icon-edit"
+                           @click.stop="withdrawfun(scope.row, scope.index)">撤回
+                </el-button>
+            </template>
+        </avue-crud>
+    </div>
+</template>
+
+<script>
+    import {billsRevokeReinsurancePolicy} from "@/api/iosBasicData/bills";
+
+    export default {
+        props:{
+            data:{
+                type:Array,
+            },
+            assemblyForm:{
+                type:Object,
+            },
+            typeMenu:{
+                type:Boolean,
+                default:false,
+            }
+        },
+        data(){
+            return {
+                selectionList:[],
+                loading:false,
+                option:{
+                    height:'450',
+                    calcHeight: 30,
+                    tip: false,
+                    searchShow: true,
+                    searchMenuSpan: 6,
+                    border: true,
+                    selection: true, // 多选
+                    index:true,
+                    stripe:true,
+                    addBtn:false,
+                    viewBtn:false,
+                    delBtn:false,
+                    editBtn:false,
+                    menu:true, // 操作栏
+                    menuWidth:'auto',
+                    column: [
+                        {
+                            label: "单据编号",
+                            prop: "billNo",
+                        },
+                        {
+                            label: "单据日期",
+                            prop: "billDate",
+                        },
+                        {
+                            label: "客户名",
+                            prop: "corpCnName",
+                        },
+                        {
+                            label: "客户英文名",
+                            prop: "corpEnName",
+                        },
+                        {
+                            label: "唛头",
+                            prop: "marks",
+                        },
+                        {
+                            label: "件数",
+                            prop: "quantity",
+                        },
+                        {
+                            label: "包装单位",
+                            prop: "packingUnit",
+                        },
+                        {
+                            label: "毛重 (KGM)",
+                            prop: "grossWeight",
+                        },
+                        {
+                            label: "净重 (KGM)",
+                            prop: "netWeight",
+                        },
+                        {
+                            label: "体积 (CBM)",
+                            prop: "measurement",
+                        },
+                    ]
+                },
+            }
+        },
+        created() {
+            if (this.typeMenu) {
+                this.option.menu = false
+                this.option.selection = false
+                this.option.height = '200'
+            }else {
+                this.option.menu = true
+                this.option.selection = true
+                this.option.height = '450'
+            }
+        },
+        methods:{
+            // 批量撤回
+            batchWithdrawfun(){
+                if (this.selectionList.length === 0) {
+                    this.$message.warning("请选择至少一条数据");
+                    return;
+                }
+                this.$confirm("确定将选择数据撤回?", {
+                    confirmButtonText: "确定",
+                    cancelButtonText: "取消",
+                    type: "warning"
+                }).then(()=>{
+                    let arr = this.selectionList.map(item=>{
+                        return item.id
+                    })
+                    this.billsRevokeReinsurancePolicyfun(arr.join(','),this.assemblyForm.id)
+                })
+            },
+            withdrawfun(row){
+                this.$confirm("确定将选择数据撤回?", {
+                    confirmButtonText: "确定",
+                    cancelButtonText: "取消",
+                    type: "warning"
+                }).then(()=>{
+                    this.billsRevokeReinsurancePolicyfun(row.id,this.assemblyForm.id)
+                })
+            },
+            // 选择赋值
+            selectionChange(list) {
+                this.selectionList = list
+            },
+            // 撤回接口
+            billsRevokeReinsurancePolicyfun(ids,id){
+                billsRevokeReinsurancePolicy(ids,id).then(res=>{
+                    this.$message({
+                        type: "success",
+                        message: "操作成功!"
+                    });
+                    this.$emit('billsListAllfun')
+                })
+            },
+        }
+    }
+</script>
+
+<style scoped>
+
+</style>

+ 39 - 43
src/views/iosBasicData/SeafreightExportF/bills/assembly/feecenter.vue

@@ -66,40 +66,38 @@
                         <span v-else>{{row.corpCnName}}</span>
                     </template>
                 </el-table-column>
-                <el-table-column label="费用">
-                    <el-table-column
-                        prop="feeCnName"
-                        label="简称" width="160px">
-                        <template slot-scope="{ row }">
-                            <search-query v-if="row.edit"
-                                          :datalist="feeCnNameData"
-                                          :selectValue="row.feeCnName"
-                                          :filterable="true"
-                                          :clearable="true"
-                                          :remote="true"
-                                          :buttonIf="false"
-                                          :forParameter="{key:'id',label:'cnName',value:'cnName'}"
-                                          @remoteMethod="bfeesListfun($event,'feeCnName')"
-                                          @corpChange="corpChange($event,'feeCnName',row)" >
-                            </search-query>
-                            <span v-else>{{row.feeCnName}}</span>
-                        </template>
-                    </el-table-column>
-                    <el-table-column
-                        prop="cntrTypeCode"
-                        label="预/到付" width="120px">
-                        <template slot-scope="{ row }">
-                            <el-select v-if="row.edit" v-model="row.cntrTypeCode" placeholder="请选择">
-                                <el-option
-                                    v-for="item in cntrTypeCodeData"
-                                    :key="item.value"
-                                    :label="item.label"
-                                    :value="item.value">
-                                </el-option>
-                            </el-select>
-                            <span v-else>{{row.cntrTypeCode}}</span>
-                        </template>
-                    </el-table-column>
+                <el-table-column
+                    prop="feeCnName"
+                    label="费用简称" width="160px">
+                    <template slot-scope="{ row }">
+                        <search-query v-if="row.edit"
+                                      :datalist="feeCnNameData"
+                                      :selectValue="row.feeCnName"
+                                      :filterable="true"
+                                      :clearable="true"
+                                      :remote="true"
+                                      :buttonIf="false"
+                                      :forParameter="{key:'id',label:'cnName',value:'cnName'}"
+                                      @remoteMethod="bfeesListfun($event,'feeCnName')"
+                                      @corpChange="corpChange($event,'feeCnName',row)" >
+                        </search-query>
+                        <span v-else>{{row.feeCnName}}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column
+                    prop="cntrTypeCode"
+                    label="预付/到付" width="120px">
+                    <template slot-scope="{ row }">
+                        <el-select v-if="row.edit" v-model="row.cntrTypeCode" placeholder="请选择">
+                            <el-option
+                                v-for="item in cntrTypeCodeData"
+                                :key="item.value"
+                                :label="item.label"
+                                :value="item.value">
+                            </el-option>
+                        </el-select>
+                        <span v-else>{{row.cntrTypeCode}}</span>
+                    </template>
                 </el-table-column>
                 <el-table-column
                     prop="unitNo"
@@ -155,15 +153,13 @@
                         <span v-else>{{row.curCode}}</span>
                     </template>
                 </el-table-column>
-                <el-table-column label="应收金额(含税)">
-                    <el-table-column
-                        prop="rmbAmount"
-                        label="RMB">
-                    </el-table-column>
-                    <el-table-column
-                        prop="usdAmount"
-                        label="USD">
-                    </el-table-column>
+                <el-table-column
+                    prop="rmbAmount"
+                    label="RMB(含税)">
+                </el-table-column>
+                <el-table-column
+                    prop="usdAmount"
+                    label="USD(含税)">
                 </el-table-column>
                 <el-table-column
                     prop="exrate"

+ 28 - 7
src/views/iosBasicData/SeafreightExportF/bills/billsDetails.vue

@@ -147,7 +147,11 @@
                     <el-tab-pane label="文件中心" name="seventh">
                         <filescenter :assemblyForm="form" :detailData="detailData"></filescenter>
                     </el-tab-pane>
-                    <!--<el-tab-pane label="分单列表" name="eighth">分单列表</el-tab-pane>-->
+                    <el-tab-pane label="分单列表" name="eighth">
+                        <Split-list :detailData="detailData" :assemblyForm="form"
+                                    :data="billsListAllData"
+                                    @billsListAllfun="billsListAllfun(this.form.id)"></Split-list>
+                    </el-tab-pane>
                 </el-tabs>
             </basic-container>
             <basic-container :showBtn="true" v-if="activeName == 'first' || activeName == 'second'">
@@ -171,6 +175,7 @@ import {getList as userGetList} from '@/api/system/user'
 import SearchQuery from "@/components/iosbasic-data/searchquery.vue";
 import bcorps from "@/views/iosBasicData/bcorps/index.vue";
 import bcorpstypedefine from "@/views/iosBasicData/bcorps/bcorpstypedefine.vue";
+import SplitList from "@/views/iosBasicData/SeafreightExportF/bills/assembly/SplitList.vue";
 import {getLazylist} from "@/api/basicData/agreement";
 import {getBcorpsList, getBcorpslistByType} from "@/api/iosBasicData/bcorps";
 import {getBlocationsList} from "@/api/iosBasicData/blocations";
@@ -178,7 +183,7 @@ import {getBcorpsattnList} from "@/api/iosBasicData/bcorpsattn";
 import {getWorkDicts} from "@/api/system/dictbiz";
 import {getDeptLazyTree} from "@/api/system/dept";
 import {bcorpstypedefineList} from "@/api/iosBasicData/bcorpstypedefine";
-import {billsDetail, billsGetBillNo, billsSubmit} from '@/api/iosBasicData/bills'
+import {billsDetail, billsGetBillNo, billsListAll, billsSubmit} from '@/api/iosBasicData/bills'
     export default {
         components:{
             SearchQuery,
@@ -190,7 +195,8 @@ import {billsDetail, billsGetBillNo, billsSubmit} from '@/api/iosBasicData/bills
             DistributionBox,
             feecenter,
             bcorps,
-            bcorpstypedefine
+            bcorpstypedefine,
+            SplitList
         },
         props:{
             detailData: {
@@ -199,7 +205,9 @@ import {billsDetail, billsGetBillNo, billsSubmit} from '@/api/iosBasicData/bills
         },
         data() {
             return {
-                pageLoading:false,
+                // 分单列表数据
+                billsListAllData:[],
+                pageLoading:true,
                 saveLoading:false,
                 form:{
                     billType:'DD',
@@ -831,22 +839,35 @@ import {billsDetail, billsGetBillNo, billsSubmit} from '@/api/iosBasicData/bills
             async billsDetailfun(id){
                 const res = await billsDetail(id)
                 this.form = res.data.data;
+                this.pageLoading = false
                 // 配箱最上面可以编辑
                 for(let item of this.form.containersList) {
                     item.edit = false
                 }
                 // 配箱最下面的
                 for(let item of this.form.waitingBoxList) {
-                    this.$set(item,'editQuantity',1)
-                    this.$set(item,'editGrossWeight',1)
-                    this.$set(item,'editMeasurement',1)
+                    this.$set(item,'editQuantity',item.quantity)
+                    this.$set(item,'editGrossWeight',item.grossWeight)
+                    this.$set(item,'editMeasurement',item.measurement)
                     this.$set(item,'edit',false)
                 }
             },
             // tbas切换
             handleClick(tba,event) {
+                if (this.activeName == 'eighth') {
+                    if (this.form.id) {
+                        this.billsListAllfun(this.form.id)
+                    }
+                }
+            },
+            // 获取不分页的分单列表
+            billsListAllfun(masterId){
+                billsListAll({masterId}).then(res=>{
+                    this.billsListAllData = res.data.data
 
+                })
             },
+
         },
     }
 

Разница между файлами не показана из-за своего большого размера
+ 345 - 1817
src/views/iosBasicData/SeafreightExportF/bills/index.vue


Некоторые файлы не были показаны из-за большого количества измененных файлов