浏览代码

海运进口

Qukatie 8 月之前
父节点
当前提交
4f54f0a31f

+ 1 - 1
src/api/boxManagement/buyContainer/index.js

@@ -229,7 +229,7 @@ export function revoke(data) {
     data: data
   })
 }
-// 调箱确认
+
 export function pleaseVerifyCost(data) {
   return request({
     url: '/api/blade-los/expenseapplication/pleaseVerifyCost',

+ 49 - 1
src/api/iosBasicData/bills.js

@@ -276,11 +276,59 @@ export const transferOrder = (data) => {
     data: data
   })
 }
-// 物流撤销提交
+// 撤销提交
 export const revokeTransferOrder = (data) => {
   return request({
     url: '/api/blade-los/bills/revokeTransferOrder',
     method: 'post',
     data: data
   })
+}
+// 接收
+export const receive = (data) => {
+  return request({
+    url: '/api/blade-los/bills/receive',
+    method: 'post',
+    data: data
+  })
+}
+// 撤销接收
+export const revokeReceive = (data) => {
+  return request({
+    url: '/api/blade-los/bills/revokeReceive',
+    method: 'post',
+    data: data
+  })
+}
+// 换单
+export const changeOrders = (data) => {
+  return request({
+    url: '/api/blade-los/bills/changeOrders',
+    method: 'post',
+    data: data
+  })
+}
+// 撤销换单
+export const revokeChangeOrders = (data) => {
+  return request({
+    url: '/api/blade-los/bills/revokeChangeOrders',
+    method: 'post',
+    data: data
+  })
+}
+// 退押
+export const returningSecurityMoney = (data) => {
+  return request({
+    url: '/api/blade-los/bills/returningSecurityMoney',
+    method: 'post',
+    data: data
+  })
+}
+// 撤销退押
+export const revokeReturningSecurityMoney = (data) => {
+  return request({
+    url: '/api/blade-los/bills/revokeReturningSecurityMoney',
+    method: 'post',
+    data: data
+  })
 }

+ 7 - 0
src/api/iosBasicData/feecenter.js

@@ -71,3 +71,10 @@ export const getFeeCenterCorpIds = (params) => {
     params:params
   })
 }
+export function pleaseVerifyCost(data) {
+  return request({
+    url: '/api/blade-los/expenseapplication/pleaseVerifyCost',
+    method: 'post',
+    data: data
+  })
+}

+ 52 - 20
src/views/iosBasicData/OceanFreightImport/bills/assembly/EntrustmentLnformation.vue

@@ -660,6 +660,32 @@
                             </el-col>
                         </div>
                         <div>
+                            <el-col :span="13">
+                                <el-form-item label="OP" prop="operatorName" label-width="80px">
+                                    <span slot="label">
+                                        <span style="color: #1e9fff">OP</span>
+                                    </span>
+                                    <dic-select v-model="assemblyForm.operatorName" placeholder="OP" key="id"
+                                        label="name"
+                                        :url="'/blade-user/page?current=1&size=10&deptId=' + saberUserInfo.dept_pid.split(',')[0]"
+                                        :filterable="true" dataName="name"
+                                        @selectChange="dicChange('operatorName', $event)" res="records"
+                                        :disabled="detailData.seeDisabled"></dic-select>
+                                </el-form-item>
+                            </el-col>
+                            <el-col :span="11">
+                                <el-form-item label="客服" prop="accDeptName" label-width="40px">
+                                    <span slot="label">
+                                        <span style="color: #1e9fff">客服</span>
+                                    </span>
+                                    <tree-select v-model="assemblyForm.accDeptName" :data="dicTree" nodeKey="title"
+                                        size="small" :clearable="false" :multiple="false" placeholder="请选择客服"
+                                        :disabled="detailData.seeDisabled" @input="treeChange($event)">
+                                    </tree-select>
+                                </el-form-item>
+                            </el-col>
+                        </div>
+                        <div>
                             <el-col>
                                 <el-form-item label="设备单指示" prop="equipmentListIndication" label-width="90px">
                                     <span slot="label">
@@ -672,15 +698,16 @@
                                 </el-form-item>
                             </el-col>
                         </div>
-                                 <div>
+                        <div>
                             <el-col>
-                                <el-form-item label="ML-MB/L NO" prop="equipmentListIndication" label-width="90px">
+                                <el-form-item label="ML-MB/L NO" prop="mlMblno" label-width="90px">
                                     <span slot="label">
                                         <span style="color: #1e9fff">ML-MB/L NO</span>
                                     </span>
-                                    <el-input v-model="assemblyForm.equipmentListIndication" clearable
+                                    <el-input v-model="assemblyForm.mlMblno" clearable
                                         style="width: 100%" size="small"
-                                        :disabled="detailData.seeDisabled || generateBillsfalse" placeholder="请输入ML-MB/L NO">
+                                        :disabled="detailData.seeDisabled || generateBillsfalse"
+                                        placeholder="请输入ML-MB/L NO">
                                     </el-input>
                                 </el-form-item>
                             </el-col>
@@ -712,22 +739,7 @@
                             </el-col>
                         </div> -->
 
-                        <!-- <div>
-                            <el-col>
-                                <el-form-item label="OP" prop="operatorName" label-width="80px">
-                                    <span slot="label">
-                                        <span style="color: #1e9fff">OP</span>
-                                    </span>
-                                    <dic-select v-model="assemblyForm.operatorName" placeholder="OP" key="id"
-                                        label="name"
-                                        :url="'/blade-user/page?current=1&size=10&deptId=' + saberUserInfo.dept_pid.split(',')[0]"
-                                        :filterable="true" dataName="name"
-                                        @selectChange="dicChange('operatorName', $event)" res="records"
-                                        :disabled="detailData.seeDisabled"></dic-select>
-                                </el-form-item>
-                            </el-col>
 
-                        </div> -->
                         <!-- <div>
                             <el-col>
                                 <el-form-item label="付款方式" prop="mpaymode" label-width="80px">
@@ -982,6 +994,8 @@ import { synchronizationExchangeRate } from "@/api/iosBasicData/rateManagement";
 import { isProcurement } from "@/api/basicData/configuration";
 import _ from "lodash";
 import dicSelect from "@/components/dicSelect/main";
+import TreeSelect from "@/components/iosbasic-data/TreeSelect.vue";
+import { getDeptLazyTree, getDeptTree, getLazyList } from "@/api/system/dept";
 export default {
     props: {
         detailData: {
@@ -1005,9 +1019,10 @@ export default {
             default: false
         }
     },
-    components: { bcorps, SearchQuery, precontainers, bcorpstypedefine, dicSelect },
+    components: { TreeSelect,bcorps, SearchQuery, precontainers, bcorpstypedefine, dicSelect },
     data() {
         return {
+            dicTree: [],
             textareaNumber: 5,
             loading: false,
             delData: [],
@@ -1136,8 +1151,25 @@ export default {
         // 危险品包装等级
         this.dgPackingLevelWorkDicts()
         this.getHsCode()
+        this.getDicTree()
     },
     methods: {
+                getDicTree() {
+            getDeptTree().then(res => {
+                res.data.data.forEach(item => {
+                    item.label = item.title
+                })
+                this.dicTree = res.data.data
+            })
+        },
+        treeChange(val) {
+                for (let item of this.dicTree) {
+                    if (item.title == val) {
+                        this.assemblyForm.accDeptName = item.title
+                        this.assemblyForm.accDept = item.id
+                    }
+                }
+        },
         //DEL监听
         delShow(val, type) {
             if (val) {

+ 128 - 13
src/views/iosBasicData/OceanFreightImport/bills/assembly/feecenter.vue

@@ -77,6 +77,9 @@
                     <el-button v-if="roleName.indexOf('admin') != -1 || roleName.indexOf('应收修改') != -1" type="primary"
                         plain size="small" :disabled="disabled || pleasereviewType"
                         @click="allClick('发票申请', 'D')">发票申请</el-button>
+                    <el-button type="primary" plain size="small"
+                        :disabled="disabled || (selectionDList.length == 0 && selectionCList.length == 0)"
+                        @click="allClick('D费用申请')">费用申请</el-button>
                 </template>
                 <template slot="indexHeader" slot-scope="scope">
                     <el-button v-if="roleName.indexOf('admin') != -1 || roleName.indexOf('应收修改') != -1" type="primary"
@@ -556,8 +559,12 @@ import { bcurrencyGetExrate } from "@/api/iosBasicData/rateManagement";
 import {
     feecenterList,
     feecenterRemove,
-    feecenterSubmit, feecenterSubmitList,
-    finaccbillsGenerateBill, finaccbillsRevokeBill, getFeeCenterCorpIds
+    feecenterSubmit,
+    feecenterSubmitList,
+    finaccbillsGenerateBill,
+    finaccbillsRevokeBill,
+    getFeeCenterCorpIds,
+    pleaseVerifyCost
 } from "@/api/iosBasicData/feecenter";
 import { getWorkDicts } from "@/api/system/dictbiz";
 import {
@@ -615,16 +622,6 @@ export default {
                         label: "账单",
                         prop: "accStatus",
                         width: "60",
-                        dicData: [
-                            {
-                                label: '否',
-                                value: 0
-                            },
-                            {
-                                label: '是',
-                                value: 1
-                            }
-                        ],
                         overHidden: true,
                     },
                     {
@@ -914,6 +911,46 @@ export default {
                         overHidden: true,
                     },
                     {
+                        label: '账单状态',
+                        prop: 'accStatus',
+                        overHidden: true,
+                        width: 80,
+                        type: 'select',
+                        dicData: [{
+                            label: '未生成',
+                            value: 0,
+                        }, {
+                            label: '已生成',
+                            value: 1,
+                        }],
+                    },
+                    {
+                        label: '审核状态',
+                        prop: 'auditStatus',
+                        overHidden: true,
+                        width: 80,
+                        type: 'select',
+                        dicData: [{
+                            label: '录入',
+                            value: '0',
+                        }, {
+                            label: '提交审核',
+                            value: '1',
+                        }, {
+                            label: '审核中',
+                            value: '2',
+                        }, {
+                            label: '审核通过',
+                            value: '4',
+                        }],
+                    },
+                    {
+                        label: "类别",
+                        prop: "corpType",
+                        width: "100",
+                        overHidden: true,
+                    },
+                    {
                         label: "结算单位",
                         prop: "corpCnName",
                         width: "160",
@@ -1071,6 +1108,46 @@ export default {
                         width: "60",
                         overHidden: true,
                     },
+                     {
+                        label: '账单状态',
+                        prop: 'accStatus',
+                        overHidden: true,
+                        width: 80,
+                        type: 'select',
+                        dicData: [{
+                            label: '未生成',
+                            value: 0,
+                        }, {
+                            label: '已生成',
+                            value: 1,
+                        }],
+                    },
+                    {
+                        label: '审核状态',
+                        prop: 'auditStatus',
+                        overHidden: true,
+                        width: 80,
+                        type: 'select',
+                        dicData: [{
+                            label: '录入',
+                            value: '0',
+                        }, {
+                            label: '提交审核',
+                            value: '1',
+                        }, {
+                            label: '审核中',
+                            value: '2',
+                        }, {
+                            label: '审核通过',
+                            value: '4',
+                        }],
+                    },
+                    {
+                        label: "类别",
+                        prop: "corpType",
+                        width: "100",
+                        overHidden: true,
+                    },
                     {
                         label: "结算单位",
                         prop: "corpCnName",
@@ -1686,6 +1763,44 @@ export default {
                     }
                 })
             }
+            if (name == 'D费用申请') {
+                let selecList = [...this.selectionDList, ...this.selectionCList]
+                for (let row of selecList) {
+                    if (row.stlPid && row.accStatus != 0) {
+                        return this.$message.error("已生成账单,不允许重复申请");
+                    }
+                    if (row.stlPid && row.auditStatus != 0) {
+                        return this.$message.error("已申请费用,不允许重复申请");
+                    }
+                }
+                this.$confirm("确定申请费用?", {
+                    confirmButtonText: "确定",
+                    cancelButtonText: "取消",
+                    type: "warning"
+                }).then(() => {
+                    let obj = {}
+                    obj = {
+                        srcId: this.assemblyForm.id,
+                        srcType: 'HYJK',
+                        feeCenterList: selecList,
+                        url: '/iosBasicData/OceanFreightImport/bills/index',
+                        pageStatus: 'this.$store.getters.approvalDetails',
+                        pageLabel: '海运进口(F)',
+                    }
+                    const loading = this.$loading({
+                        lock: true,
+                        text: '加载中',
+                        spinner: 'el-icon-loading',
+                        background: 'rgba(255,255,255,0.7)'
+                    });
+                    pleaseVerifyCost(obj).then(res => {
+                        this.$message.success("操作成功");
+                        this.$emit('billsDetailfun')
+                    }).finally(() => {
+                        loading.close();
+                    })
+                });
+            }
         },
         // 应收新增
         addDfun() {
@@ -2048,7 +2163,7 @@ export default {
                     arr = this.assemblyForm.feeCenterListC
                 }
                 // 获取有id 的数据
-                const itemsWithId = multiList.filter(item =>item.id!=null);
+                const itemsWithId = multiList.filter(item => item.id != null);
                 let arrIds = itemsWithId.map(item => item.id) // 获取id 数据
                 // 把选中的删除掉
                 multiList.forEach((item) => {

文件差异内容过多而无法显示
+ 490 - 253
src/views/iosBasicData/OceanFreightImport/bills/billsDetails.vue


文件差异内容过多而无法显示
+ 437 - 243
src/views/iosBasicData/OceanFreightImport/bills/index.vue


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

@@ -641,7 +641,7 @@
                             </el-col>
                         </div>
                         <div>
-                            <el-col>
+                            <el-col :span="13">
                                 <el-form-item label="OP" prop="operatorName" label-width="80px">
                                     <span slot="label">
                                         <span style="color: #1e9fff">OP</span>
@@ -654,7 +654,17 @@
                                         :disabled="detailData.seeDisabled"></dic-select>
                                 </el-form-item>
                             </el-col>
-
+                            <el-col :span="11">
+                                <el-form-item label="客服" prop="accDeptName" label-width="40px">
+                                    <span slot="label">
+                                        <span style="color: #1e9fff">客服</span>
+                                    </span>
+                                    <tree-select v-model="assemblyForm.accDeptName" :data="dicTree" nodeKey="title"
+                                        size="small" :clearable="false" :multiple="false" placeholder="请选择客服"
+                                        :disabled="detailData.seeDisabled" @input="treeChange($event)">
+                                    </tree-select>
+                                </el-form-item>
+                            </el-col>
                         </div>
                         <div>
                             <el-col>
@@ -970,8 +980,10 @@ import { getBvesselsDetail } from "@/api/iosBasicData/bvessels";
 import { blinesDetail } from "@/api/iosBasicData/blines";
 import { synchronizationExchangeRate } from "@/api/iosBasicData/rateManagement";
 import { isProcurement } from "@/api/basicData/configuration";
+import { getDeptLazyTree, getDeptTree, getLazyList } from "@/api/system/dept";
 import _ from "lodash";
 import dicSelect from "@/components/dicSelect/main";
+import TreeSelect from "@/components/iosbasic-data/TreeSelect.vue";
 export default {
     props: {
         detailData: {
@@ -995,9 +1007,10 @@ export default {
             default: false
         }
     },
-    components: { bcorps, SearchQuery, precontainers, bcorpstypedefine, dicSelect },
+    components: { TreeSelect, bcorps, SearchQuery, precontainers, bcorpstypedefine, dicSelect },
     data() {
         return {
+            dicTree: [],
             textareaNumber: 5,
             loading: false,
             delData: [],
@@ -1033,7 +1046,7 @@ export default {
             cyData: [],
             podCyData: [],
             cyContactsData: [], // 场站联系人
-            podCyCnNameData:[],
+            podCyCnNameData: [],
             // 多选的数据
             tabsMultipleChoice: [],
             // 发货人数据
@@ -1126,8 +1139,25 @@ export default {
         // 危险品包装等级
         this.dgPackingLevelWorkDicts()
         this.getHsCode()
+        this.getDicTree()
     },
     methods: {
+        getDicTree() {
+            getDeptTree().then(res => {
+                res.data.data.forEach(item => {
+                    item.label = item.title
+                })
+                this.dicTree = res.data.data
+            })
+        },
+        treeChange(val) {
+                for (let item of this.dicTree) {
+                    if (item.title == val) {
+                        this.assemblyForm.accDeptName = item.title
+                        this.assemblyForm.accDept = item.id
+                    }
+                }
+        },
         //DEL监听
         delShow(val, type) {
             if (val) {
@@ -1327,7 +1357,7 @@ export default {
                     }
                 }
             }
-        // 有中文名称的港口
+            // 有中文名称的港口
             else if (cnPorArr.indexOf(name) != -1) {
                 if (!value) {
                     this.$set(this.assemblyForm, name + 'Id', '')

+ 139 - 20
src/views/iosBasicData/SeafreightExportF/bills/assembly/feecenter.vue

@@ -80,6 +80,9 @@
                         :disabled="disabled || pleasereviewType" @click="copyfun('D')">生成应付</el-button>
                     <el-button v-if="isFeeEditD" type="primary" plain size="small"
                         :disabled="disabled || pleasereviewType" @click="allClick('发票申请', 'D')">发票申请</el-button>
+                    <el-button type="primary" plain size="small"
+                        :disabled="disabled || (selectionDList.length == 0 && selectionCList.length == 0)"
+                        @click="allClick('D费用申请')">费用申请</el-button>
                 </template>
                 <template slot="indexHeader" slot-scope="scope">
                     <el-button v-if="isFeeEditD" type="primary" size="small" icon="el-icon-plus" circle
@@ -586,8 +589,12 @@ import { bcurrencyGetExrate } from "@/api/iosBasicData/rateManagement";
 import {
     feecenterList,
     feecenterRemove,
-    feecenterSubmit, feecenterSubmitList,
-    finaccbillsGenerateBill, finaccbillsRevokeBill, getFeeCenterCorpIds
+    feecenterSubmit,
+    feecenterSubmitList,
+    finaccbillsGenerateBill,
+    finaccbillsRevokeBill,
+    getFeeCenterCorpIds,
+    pleaseVerifyCost
 } from "@/api/iosBasicData/feecenter";
 import { getWorkDicts } from "@/api/system/dictbiz";
 import {
@@ -950,6 +957,40 @@ export default {
                         overHidden: true,
                     },
                     {
+                        label: '账单状态',
+                        prop: 'accStatus',
+                        overHidden: true,
+                        width: 80,
+                        type: 'select',
+                        dicData: [{
+                            label: '未生成',
+                            value: 0,
+                        }, {
+                            label: '已生成',
+                            value: 1,
+                        }],
+                    },
+                    {
+                        label: '审核状态',
+                        prop: 'auditStatus',
+                        overHidden: true,
+                        width: 80,
+                        type: 'select',
+                        dicData: [{
+                            label: '录入',
+                            value: '0',
+                        }, {
+                            label: '提交审核',
+                            value: '1',
+                        }, {
+                            label: '审核中',
+                            value: '2',
+                        }, {
+                            label: '审核通过',
+                            value: '4',
+                        }],
+                    },
+                    {
                         label: "类别",
                         prop: "corpType",
                         width: "100",
@@ -1115,6 +1156,40 @@ export default {
                         overHidden: true,
                     },
                     {
+                        label: '账单状态',
+                        prop: 'accStatus',
+                        overHidden: true,
+                        width: 80,
+                        type: 'select',
+                        dicData: [{
+                            label: '未生成',
+                            value: 0,
+                        }, {
+                            label: '已生成',
+                            value: 1,
+                        }],
+                    },
+                    {
+                        label: '审核状态',
+                        prop: 'auditStatus',
+                        overHidden: true,
+                        width: 80,
+                        type: 'select',
+                        dicData: [{
+                            label: '录入',
+                            value: '0',
+                        }, {
+                            label: '提交审核',
+                            value: '1',
+                        }, {
+                            label: '审核中',
+                            value: '2',
+                        }, {
+                            label: '审核通过',
+                            value: '4',
+                        }],
+                    },
+                    {
                         label: "类别",
                         prop: "corpType",
                         width: "100",
@@ -1174,24 +1249,30 @@ export default {
                         width: "100",
                         overHidden: true,
                     },
-                    {
-                        label: "USD(含税)",
-                        prop: "usdAmount",
-                        width: "100",
-                        overHidden: true,
-                    },
-                    {
-                        label: "CNY(净额)",
-                        prop: "rmbAmountNet",
-                        width: "100",
-                        overHidden: true,
-                    },
-                    {
-                        label: "USD(净额)",
-                        prop: "usdAmountNet",
-                        width: "100",
-                        overHidden: true,
-                    },
+                    // {
+                    //     label: "CNY(含税)",
+                    //     prop: "rmbAmount",
+                    //     width: "100",
+                    //     overHidden: true,
+                    // },
+                    // {
+                    //     label: "USD(含税)",
+                    //     prop: "usdAmount",
+                    //     width: "100",
+                    //     overHidden: true,
+                    // },
+                    // {
+                    //     label: "CNY(净额)",
+                    //     prop: "rmbAmountNet",
+                    //     width: "100",
+                    //     overHidden: true,
+                    // },
+                    // {
+                    //     label: "USD(净额)",
+                    //     prop: "usdAmountNet",
+                    //     width: "100",
+                    //     overHidden: true,
+                    // },
                     {
                         label: "核算要素",
                         prop: "elementsCnName",
@@ -2849,6 +2930,44 @@ export default {
                 }
 
             }
+            if (name == 'D费用申请') {
+                let selecList = [...this.selectionDList, ...this.selectionCList]
+                for (let row of selecList) {
+                    if (row.stlPid && row.accStatus != 0) {
+                        return this.$message.error("已生成账单,不允许重复申请");
+                    }
+                    if (row.stlPid && row.auditStatus != 0) {
+                        return this.$message.error("已申请费用,不允许重复申请");
+                    }
+                }
+                this.$confirm("确定申请费用?", {
+                    confirmButtonText: "确定",
+                    cancelButtonText: "取消",
+                    type: "warning"
+                }).then(() => {
+                    let obj = {}
+                    obj = {
+                        srcId: this.assemblyForm.id,
+                        srcType: 'HYCK',
+                        feeCenterList: selecList,
+                        url: '/iosBasicData/SeafreightExportF/bills/index',
+                        pageStatus: 'this.$store.getters.approvalDetails',
+                        pageLabel: '海运出口(F)',
+                    }
+                    const loading = this.$loading({
+                        lock: true,
+                        text: '加载中',
+                        spinner: 'el-icon-loading',
+                        background: 'rgba(255,255,255,0.7)'
+                    });
+                    pleaseVerifyCost(obj).then(res => {
+                        this.$message.success("操作成功");
+                        this.$emit('billsDetailfun')
+                    }).finally(() => {
+                        loading.close();
+                    })
+                });
+            }
         },
         // 预览报表
         handleReportPreview(url, data) {

+ 1 - 2
src/views/iosBasicData/SeafreightExportF/bills/billsDetails.vue

@@ -389,7 +389,7 @@ import {
     logisticsSubmission,
     logisticsRevokeSubmission,
     transferOrder,
-    revokeTransferOrder
+    revokeTransferOrder,
 } from '@/api/iosBasicData/bills'
 import { dateFormat } from "@/util/date";
 import checkSchedule from "@/components/checkH/checkSchedule.vue";
@@ -1020,7 +1020,6 @@ export default {
                         this.billsDetailfun(this.form.id)
                     })
                 })
-
             }
             if (name == '撤销转单') {
                 this.$confirm('是否撤销转单?', '提示', {

文件差异内容过多而无法显示
+ 311 - 426
src/views/iosBasicData/SeafreightExportF/bills/index.vue


文件差异内容过多而无法显示
+ 616 - 544
src/views/system/dept.vue


部分文件因为文件数量过多而无法显示