Commit a2202da6 authored by huyf's avatar huyf

Merge remote-tracking branch 'origin/dev1.6' into dev1.6

parents 915e7dba 0fffbeb7
......@@ -77,3 +77,19 @@ export function getWareHousedVolume(params){
params
})
}
// 根据运输方式ID获取异常订单方数
export function getExceptionVolume(params){
return request({
url: '/ecw/future-box/getExceptionVolume',
method: 'get',
params
})
}
// 根据运输方式ID获取自单代报订单方数
export function getOrderReportVolume(params){
return request({
url: '/ecw/future-box/getOrderReportVolume',
method: 'get',
params
})
}
......@@ -541,3 +541,118 @@ export function orderDeptStatistics(params){
params
})
}
// 参数搜索导出订单管理 Excel
export function orderExportSearch(params){
return request({
url: '/ecw/order/export/search',
method: 'GET',
responseType: 'arraybuffer',
params
})
}
// 参数搜索导出我的订单管理 Excel
export function orderExportMySearch(params){
return request({
url: '/ecw/order/export/my/search',
responseType: 'arraybuffer',
method: 'GET',
params
})
}
// 参数搜索导出部门订单管理 Excel
export function orderExportDeptSearch(params){
return request({
url: '/ecw/order/export/dept/search',
method: 'GET',
responseType: 'arraybuffer',
params
})
}
// 参数搜索导出异常订单统计 Excel
export function exportAbnormal(params){
return request({
url: '/ecw/order/export/export-exception',
method: 'get',
params: params,
responseType: 'blob'
})
}
// 参数搜索导出重货单统计 Excel
export function exportHeavyOrder(params){
return request({
url: '/ecw/order/export/export-heavyOrder',
method: 'get',
params: params,
responseType: 'blob'
})
}
// 参数搜索导出退仓单统计统计 Excel
export function exportReturnOrder(params){
return request({
url: '/ecw/order/export/export-returnOrder',
method: 'get',
params: params,
responseType: 'blob'
})
}
// 参数搜索导出售后赔偿金额统计 Excel
export function exportSaleRepay(params){
return request({
url: '/ecw/order/export/export-saleRepay',
method: 'get',
params: params,
responseType: 'blob'
})
}
// 参数搜索导出报关数统计 Excel
export function exportCustomsDatas(params){
return request({
url: '/ecw/order/export/export-customDatas',
method: 'get',
params: params,
responseType: 'blob'
})
}
// 参数搜索导出客户出货量统计 Excel
export function exportShippingDatas(params){
return request({
url: '/ecw/order/export/export-shipDatas',
method: 'get',
params: params,
responseType: 'blob'
})
}
// 参数搜索导出预付运费统计 Excel
export function exportShipFee(params){
return request({
url: '/ecw/order/export/export-shipFee',
method: 'get',
params: params,
responseType: 'blob'
})
}
// 参数搜索导出卸货费统计 Excel
export function exportUnload(params){
return request({
url: '/ecw/order/export/export-excel',
method: 'get',
params: params,
responseType: 'blob'
})
}
......@@ -101,3 +101,13 @@ export function getBmpDetailByBusinessId(businessId) {
params: {businessId}
})
}
// 导出订单异常 Excel
export function exportExcel(params) {
return request({
url: '/ecw/order-exception/export-excel',
method: 'get',
params,
responseType: 'arraybuffer'
})
}
\ No newline at end of file
......@@ -27,13 +27,20 @@ export function listSimpleUsers() {
}
// 获取用户精简信息列表
// 获取客服岗位精简信息列表
export function listServiceUser() {
return request({
url: '/system/user/list-service-user',
method: 'get'
})
}
// 获取用户精简信息列表
export function listAllSimpl(){
return request({
url:'/system/user/list-all-simple',
method:'get',
})
}
// 查询用户详细
export function getUser(userId) {
......
This diff is collapsed.
{
"编号":"编号",
"登录": "登录",
"上传附件": "上传附件",
"不需要": "不需要",
......
......@@ -291,13 +291,13 @@ export const constantRoutes = [
name: 'perfect',
meta: {title: '完善客户',titleEn:'Perfect customers', icon: ''}
},
{
path: 'query/:customerId(\\d+)',
component: (resolve) => import('@/views/ecw/customer/query'),
props: true,
name: 'customerQuery',
meta: {title: '客户详情',titleEn:'Customer details', icon: '', activeMenu: '/customer/customer'}
}
// {
// path: 'query/:customerId(\\d+)',
// component: (resolve) => import('@/views/ecw/customer/query'),
// props: true,
// name: 'customerQuery',
// meta: {title: '客户详情',titleEn:'Customer details', icon: '', activeMenu: '/customer/customer'}
// }
]
},
{
......
......@@ -96,7 +96,7 @@ export default {
},
/** 关闭按钮 */
close() {
this.$tab.closeOpenPage({ path: "/bpm/manager/model" });
this.$tab.closeOpenPage({ path: "/manager/model" });
},
}
};
......
......@@ -340,7 +340,7 @@ export default {
path: this.processInstance.processDefinition?.formCustomViewPath
},
}
console.log(this.processInstance.processDefinition.formCustomViewPath.trim())
console.log('formCustomViewPath', this.processInstance.processDefinition.formCustomViewPath.trim())
return map[this.processInstance.processDefinition.formCustomViewPath.trim()]
}
},
......
......@@ -33,8 +33,8 @@
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column :label="$t('流程编号')" align="center" prop="processInstance.id" width="320"/>
<el-table-column :label="$t('流程名称')" align="center" prop="processInstance.name" width="320"/>
<el-table-column :label="$t('流程编号')" align="center" prop="processInstance.id" width="220"/>
<el-table-column :label="$t('流程名称')" align="center" prop="processInstance.name" width="220"/>
<el-table-column :label="$t('流程分类')" align="center" prop="category">
<template slot-scope="scope">
......@@ -66,7 +66,7 @@
<span>{{ parseTime(scope.row.endTime) }}</span>
</template>
</el-table-column> -->
<el-table-column :label="$t('操作')" align="center" fixed="right" class-name="small-padding fixed-width">
<el-table-column :label="$t('操作')" align="center" fixed="right" class-name="small-padding fixed-width" width="150">
<template slot-scope="scope">
<!-- <el-button size="mini" type="text" icon="el-icon-edit" @click="handleCancel(scope.row)"
v-hasPermi="['bpm:task:update']">{{ $t('取消') }}
......
......@@ -63,21 +63,31 @@
{{getShipChannelName(row.shippingChannelId)}}
</template>
</el-table-column>
<el-table-column :label="$t('待入仓方数')" align="center" prop="readyWarehousingNumber">
<el-table-column :label="$t('待入仓订单方数')" align="center" prop="readyWarehousingNumber">
<template slot-scope="{row}">
{{row.readyWarehousingNumber || 0}}
</template>
</el-table-column>
<el-table-column :label="$t('已入仓方数')" align="center" prop="warehousedNumber">
<el-table-column :label="$t('已入仓订单方数')" align="center" prop="warehousedNumber">
<template slot-scope="{row}">
{{row.warehousedNumber || 0}}
</template>
</el-table-column>
<el-table-column :label="$t('在仓方数')" align="center" prop="warehousingNumber" >
<el-table-column :label="$t('异常订单方数')" align="center" prop="exceptionNumber">
<template slot-scope="{row}">
{{row.getExceptionVolume || 0}}
</template>
</el-table-column>
<el-table-column :label="$t('待排单订单方数')" align="center" prop="warehousingNumber">
<template slot-scope="{row}">
{{row.warehousingNumber || 0}}
</template>
</el-table-column>
<el-table-column :label="$t('自单代报订单方数')" align="center" prop="orderReportNumber" >
<template slot-scope="{row}">
{{row.orderReportNumber || 0}}
</template>
</el-table-column>
<el-table-column :label="$t('已装柜方数')" align="center" prop="loadingNumber" >
<template slot-scope="{row}">
{{row.loadingNumber || 0}}
......@@ -133,15 +143,21 @@
<el-option v-for="item in channelList" :label="$l(item, 'name')" :value="item.channelId" :key="item.channelId"></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('待入仓方数')">
<el-form-item :label="$t('待入仓订单方数')">
{{form.readyWarehousingNumber}} m³
</el-form-item>
<el-form-item :label="$t('已入仓方数')">
<el-form-item :label="$t('已入仓订单方数')">
{{form.warehousedNumber}} m³
</el-form-item>
<el-form-item :label="$t('在仓方数')">
<el-form-item :label="$t('异常订单方数')">
{{form.exceptionNumber}} m³
</el-form-item>
<el-form-item :label="$t('待排单订单方数')">
{{form.warehousingNumber}} m³
</el-form-item>
<el-form-item :label="$t('自单代报订单方数')">
{{form.orderReportNumber}} m³
</el-form-item>
<el-form-item :label="$t('已装柜仓数')">
{{form.loadingNumber}} m³
</el-form-item>
......@@ -174,7 +190,7 @@
</template>
<script>
import { createFutureBox, updateFutureBox, deleteFutureBox, getFutureBox, getFutureBoxPage, exportFutureBoxExcel, getBoxedVolume, getToBeWareHousedVolume,getWareHousedVolume } from "@/api/ecw/futureBox";
import { createFutureBox, updateFutureBox, deleteFutureBox, getFutureBox, getFutureBoxPage, exportFutureBoxExcel, getBoxedVolume, getToBeWareHousedVolume,getWareHousedVolume,getExceptionVolume, getOrderReportVolume} from "@/api/ecw/futureBox";
import {getCabinetPage} from "@/api/ecw/cabinet";
import { getChannelList } from '@/api/ecw/channel';
import { getWarehouseList } from "@/api/ecw/warehouse"
......@@ -211,7 +227,9 @@ export default {
readyWarehousingNumber: null,
warehousedNumber: null,
warehousingNumber: null,
exceptionNumber: null,
loadingNumber: null,
orderReportNumber: null,
futureNumber: null,
gpNumber: null,
hqNumber: null,
......@@ -352,12 +370,22 @@ export default {
getWareHousedVolume(data).then(res => {
this.$set(this.form, 'warehousedNumber', res.data || 0)
})
// 获得异常订单方数
getExceptionVolume(data).then(res => {
this.$set(this.form, 'exceptionNumber', res.data || 0)
})
// 获得自单代报订单方数
getOrderReportVolume(data).then(res => {
this.$set(this.form, 'orderReportNumber', res.data || 0)
})
},
setDefaultVolume(){
this.$set(this.form, 'loadingNumber', 0)
this.$set(this.form, 'readyWarehousingNumber', 0)
this.$set(this.form, 'warehousedNumber', 0)
this.$set(this.form, 'warehousingNumber', 0)
this.$set(this.form, 'exceptionNumber',0)
this.$set(this.form,'orderReportNumber',0)
},
/** 查询列表 */
getList() {
......@@ -387,7 +415,9 @@ export default {
readyWarehousingNumber: undefined,
warehousedNumber: undefined,
warehousingNumber: undefined,
exceptionNumber: undefined,
loadingNumber: undefined,
orderReportNumber: undefined,
futureNumber: undefined,
gpNumber: undefined,
hqNumber: undefined,
......
......@@ -65,11 +65,11 @@
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" v-hasPermi="['shipment:box:create']">{{$t('出货安排')}}
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" v-hasPermi="['shipment:box:action:create']">{{$t('出货安排')}}
</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading" v-hasPermi="['shipment:box:export']">{{$t('导出')}}
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading" v-hasPermi="['shipment:box:action:export']">{{$t('导出')}}
</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
......@@ -114,31 +114,31 @@
</el-table-column>
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width" width="200px">
<template slot-scope="scope">
<el-dropdown trigger="click" @command="(command)=>handleCommand(scope.row, command)" style="marginRight:10px;">
<el-dropdown trigger="click" v-hasPermi="['shipment:box:action:sea','shipment:box:action:error','shipment:box:action:cost','shipment:box:action:editLadingBill']" @command="(command)=>handleCommand(scope.row, command)" style="marginRight:10px;">
<el-button type="primary">
{{$t('操作')}}<i class="el-icon-arrow-down el-icon--right"></i>
</el-button>
<el-dropdown-menu slot="dropdown">
<!-- <el-dropdown-item :disabled="scope.row.ldStatus>=46" command="edit">{{$t('编辑')}}</el-dropdown-item> -->
<el-dropdown-item command="sea">{{$t('操作-海运')}}</el-dropdown-item>
<el-dropdown-item command="error">{{$t('异常登记')}}</el-dropdown-item>
<el-dropdown-item command="cost">{{$t('费用登记')}}</el-dropdown-item>
<el-dropdown-item command="sea" v-hasPermi="['shipment:box:action:sea']">{{$t('操作-海运')}}</el-dropdown-item>
<el-dropdown-item command="error" v-hasPermi="['shipment:box:action:error']">{{$t('异常登记')}}</el-dropdown-item>
<el-dropdown-item command="cost" v-hasPermi="['shipment:box:action:cost']">{{$t('费用登记')}}</el-dropdown-item>
<!-- <el-dropdown-item command="delete">{{$t('删除')}}</el-dropdown-item> -->
<el-dropdown-item :disabled="scope.row.ldStatus<46" command="editLadingBill">{{$t('编辑提货单')}}</el-dropdown-item>
<el-dropdown-item :disabled="scope.row.ldStatus<46" command="editLadingBill" v-hasPermi="['shipment:box:action:editLadingBill']">{{$t('编辑提货单')}}</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<el-dropdown trigger="click" @command="(command)=>handleCommand(scope.row, command)">
<el-dropdown trigger="click" @command="(command)=>handleCommand(scope.row, command)" v-hasPermi="['shipment:box:download:downloadPreloadGoodsList','shipment:box:download:downloadLoadGoodsList','shipment:box:download:downloadReceivableList','shipment:box:download:downloadAgentListFiles','shipment:box:download:downloadSoncapFiles','shipment:box:download:zipDownload','shipment:box:download:downloadLadingCopy']">
<el-button type="primary">
{{$t('下载')}}<i class="el-icon-arrow-down el-icon--right"></i>
</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="downloadPreloadGoodsList">{{$t('预装单')}}</el-dropdown-item>
<el-dropdown-item command="downloadLoadGoodsList">{{$t('已装单')}}</el-dropdown-item>
<el-dropdown-item command="downloadReceivableList">{{$t('应收汇总表')}}</el-dropdown-item>
<el-dropdown-item command="downloadAgentListFiles">agent list</el-dropdown-item>
<el-dropdown-item command="downloadSoncapFiles">soncap</el-dropdown-item>
<el-dropdown-item command="zipDownload">{{$t('提货单')}}</el-dropdown-item>
<el-dropdown-item command="downloadLadingCopy">{{$t('提单Copy')}}</el-dropdown-item>
<el-dropdown-item command="downloadPreloadGoodsList" v-hasPermi="['shipment:box:download:downloadPreloadGoodsList']">{{$t('预装单')}}</el-dropdown-item>
<el-dropdown-item command="downloadLoadGoodsList" v-hasPermi="['shipment:box:download:downloadLoadGoodsList']">{{$t('已装单')}}</el-dropdown-item>
<el-dropdown-item command="downloadReceivableList" v-hasPermi="['shipment:box:download:downloadReceivableList']">{{$t('应收汇总表')}}</el-dropdown-item>
<el-dropdown-item command="downloadAgentListFiles" v-hasPermi="['shipment:box:download:downloadAgentListFiles']">agent list</el-dropdown-item>
<el-dropdown-item command="downloadSoncapFiles" v-hasPermi="['shipment:box:download:downloadSoncapFiles']">soncap</el-dropdown-item>
<el-dropdown-item command="zipDownload" v-hasPermi="['shipment:box:download:zipDownload']">{{$t('提货单')}}</el-dropdown-item>
<el-dropdown-item command="downloadLadingCopy" v-hasPermi="['shipment:box:download:downloadLadingCopy']">{{$t('提单Copy')}}</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</template>
......
......@@ -51,11 +51,11 @@
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" v-hasPermi="['shipment:box:create']">{{$t('出货安排')}}
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" v-hasPermi="['shipment:seaAir:action:create']">{{$t('出货安排')}}
</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading" v-hasPermi="['shipment:box:export']">{{$t('导出')}}
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading" v-hasPermi="['shipment:seaAir:action:export']">{{$t('导出')}}
</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
......@@ -106,31 +106,31 @@
</el-table-column>
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width" width="200px">
<template slot-scope="scope">
<el-dropdown trigger="click" @command="(command)=>handleCommand(scope.row, command)" style="marginRight:10px;">
<el-dropdown trigger="click" v-hasPermi="['shipment:seaAir:action:edit','shipment:seaAir:action:sea','shipment:seaAir:action:error','shipment:seaAir:action:cost','shipment:seaAir:action:delete','shipment:seaAir:action:editLadingBill']" @command="(command)=>handleCommand(scope.row, command)" style="marginRight:10px;">
<el-button type="primary">
{{$t('操作')}}<i class="el-icon-arrow-down el-icon--right"></i>
</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item :disabled="scope.row.ldStatus>=46" command="edit">{{$t('编辑')}}</el-dropdown-item>
<el-dropdown-item command="seaAir">{{$t('操作')}}-{{$t('海空联运')}}</el-dropdown-item>
<el-dropdown-item command="error">{{$t('异常登记')}}</el-dropdown-item>
<el-dropdown-item command="cost">{{$t('费用登记')}}</el-dropdown-item>
<el-dropdown-item command="delete">{{$t('删除')}}</el-dropdown-item>
<el-dropdown-item :disabled="scope.row.ldStatus<46" command="editLadingBill">{{$t('编辑提货单')}}</el-dropdown-item>
<el-dropdown-item :disabled="scope.row.ldStatus>=46" command="edit" v-hasPermi="['shipment:seaAir:action:edit']">{{$t('编辑')}}</el-dropdown-item>
<el-dropdown-item command="seaAir" v-hasPermi="['shipment:seaAir:action:seaAir']">{{$t('海空联运')}}</el-dropdown-item>
<el-dropdown-item command="error" v-hasPermi="['shipment:seaAir:action:error']">{{$t('异常登记')}}</el-dropdown-item>
<el-dropdown-item command="cost" v-hasPermi="['shipment:seaAir:action:cost']">{{$t('费用登记')}}</el-dropdown-item>
<el-dropdown-item command="delete" v-hasPermi="['shipment:seaAir:action:delete']">{{$t('删除')}}</el-dropdown-item>
<el-dropdown-item :disabled="scope.row.ldStatus<46" command="editLadingBill" v-hasPermi="['shipment:seaAir:action:editLadingBill']">{{$t('编辑提货单')}}</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<el-dropdown trigger="click" @command="(command)=>handleCommand(scope.row, command)">
<el-dropdown trigger="click" @command="(command)=>handleCommand(scope.row, command)" v-hasPermi="['shipment:seaAir:download:downloadPreloadGoodsList','shipment:seaAir:download:downloadLoadGoodsList','shipment:seaAir:download:downloadReceivableList','shipment:seaAir:download:downloadAgentListFiles','shipment:seaAir:download:downloadSoncapFiles','shipment:seaAir:download:zipDownload','shipment:seaAir:download:downloadLadingCopy']">
<el-button type="primary">
{{$t('下载')}}<i class="el-icon-arrow-down el-icon--right"></i>
</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="downloadPreloadGoodsList">{{$t('预装单')}}</el-dropdown-item>
<el-dropdown-item command="downloadLoadGoodsList">{{$t('已装单')}}</el-dropdown-item>
<el-dropdown-item command="downloadReceivableList">{{$t('应收汇总表')}}</el-dropdown-item>
<el-dropdown-item command="downloadAgentListFiles">agent list</el-dropdown-item>
<el-dropdown-item command="downloadSoncapFiles">soncap</el-dropdown-item>
<el-dropdown-item command="zipDownload">{{$t('提货单')}}</el-dropdown-item>
<el-dropdown-item command="downloadLadingCopy">{{$t('提单Copy')}}</el-dropdown-item>
<el-dropdown-item command="downloadPreloadGoodsList" v-hasPermi="['shipment:seaAir:download:downloadPreloadGoodsList']">{{$t('预装单')}}</el-dropdown-item>
<el-dropdown-item command="downloadLoadGoodsList" v-hasPermi="['shipment:seaAir:download:downloadLoadGoodsList']">{{$t('已装单')}}</el-dropdown-item>
<el-dropdown-item command="downloadReceivableList" v-hasPermi="['shipment:seaAir:download:downloadReceivableList']">{{$t('应收汇总表')}}</el-dropdown-item>
<el-dropdown-item command="downloadAgentListFiles" v-hasPermi="['shipment:seaAir:download:downloadAgentListFiles']">agent list</el-dropdown-item>
<el-dropdown-item command="downloadSoncapFiles" v-hasPermi="['shipment:seaAir:download:downloadSoncapFiles']">soncap</el-dropdown-item>
<el-dropdown-item command="zipDownload" v-hasPermi="['shipment:seaAir:download:zipDownload']">{{$t('提货单')}}</el-dropdown-item>
<el-dropdown-item command="downloadLadingCopy" v-hasPermi="['shipment:seaAir:download:downloadLadingCopy']">{{$t('提单Copy')}}</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</template>
......
......@@ -182,6 +182,7 @@ export default {
const imgWidth = canvas.width
const imgHeight = canvas.height
console.log(imgHeight, imgWidth)
let _w = 595.28;
let _h = 595.28/imgWidth*imgHeight;
if(_h>841.89){
......@@ -194,6 +195,7 @@ export default {
return Promise.reject() */
let form = new FormData()
let file = this.selfNo + '-' + this.currRow.tidanNo + '.pdf'
form.append('file', new File([doc.output('arraybuffer')], file, {type: 'application/pdf'}))
form.append('path', `admin/shipment/${this.selfNo}/pdf/${file}`) // 最前面不能有/,否则返回的url会有两个/
......
......@@ -229,6 +229,7 @@
<p>{{$t('外部仓')}}</p>
</div>
<div class="table-button">
<el-button v-if="item.relateOrderList" type="primary" size="small" style="margin-right: 20px;" @click="getRelationOrder(item)">{{$t('关联订单')}}</el-button>
<el-dropdown trigger="click" @command="(command)=>handleGoods('all',item,command)">
<el-button type="success" size="small" :disabled="isAudit">{{$t('预装全部')}}</el-button>
<el-dropdown-menu slot="dropdown" v-if="preList.sectionGoodList">
......@@ -316,6 +317,15 @@
<el-button type="primary" @click="onSubmit">{{$t('提交申请')}}</el-button>
</div>
</el-row>
<!-- 关联订单弹窗 -->
<el-dialog :title="relationOrderListDialog.title" :visible.sync="relationOrderListDialog.visible" width="30%" append-to-body>
<el-row v-for="(item,index) in relationOrderListDialog.data" :key="item.id">
{{index+1}}. {{item.orderNo}}
</el-row>
<el-row style="margin-top: 10px;text-align: center;">
<el-button type="primary" @click="relationOrderListDialog.visible = false">{{$t('关闭窗口')}}</el-button>
</el-row>
</el-dialog>
</div>
</template>
......@@ -406,6 +416,13 @@ export default {
selectedUsers: [],
// 智慧预装
smartInstall: 1,
//关联订单
relationOrderListDialog: {
title: '',
visible: false,
data: []
},
};
},
computed: {
......@@ -497,6 +514,13 @@ export default {
}
});
},
/**查看关联订单 */
getRelationOrder(item) {
console.log(item)
this.relationOrderListDialog.title = item.orderNo+'关联订单'
this.relationOrderListDialog.visible = true
this.relationOrderListDialog.data = item.relateOrderList
},
/** 搜索按钮操作 */
handleQuery(type) {
this.pageParam.pageNo = 1;
......@@ -606,7 +630,7 @@ export default {
.then((_) => {
deleteSection(part.id).then((res) => {
serviceMsg(res, this).then(() => {
this.getSecGoods();
this.queryAllData();
});
});
})
......
......@@ -171,7 +171,16 @@ export default {
});
});
});
this.tallyList = list;
let relist = []
list.forEach(l=>{
let index = relist.findIndex(i=>i.orderId == l.orderId && i.positionNo == l.positionNo)
if(index == -1){
relist.push(l)
}else{
relist[index].warehouseInInfo.cartonsNum = parseInt(relist[index].warehouseInInfo.cartonsNum)+parseInt(l.warehouseInInfo.cartonsNum)
}
})
this.tallyList = relist;
});
},
// 选中
......
......@@ -248,8 +248,8 @@
</el-form>
<div class="pl-100">
<template v-if="!readonly">
<el-button type="primary" @click="submitForm(0)">{{$t('保存')}}</el-button>
<el-button type="primary" @click="submitForm(1)">{{$t('发布')}}</el-button>
<el-button type="primary" @click="submitForm(0)" v-hasPermi="['ecw:coupon:draft']">{{$t('保存')}}</el-button>
<el-button type="primary" @click="submitForm(1)" v-hasPermi="['ecw:coupon:publish']">{{$t('发布')}}</el-button>
<el-button type="default" @click="reset">{{$t('重置')}}</el-button>
</template>
<el-button @click="$router.back()">{{$t('返回')}}</el-button>
......
This diff is collapsed.
......@@ -60,11 +60,7 @@
</template>
</el-table-column>
<el-table-column label="100外币兑人民币汇率" align="center" prop="huilv" />
<el-table-column label="100人民币兑外币汇率" align="center" prop="huilv">
<template slot-scope="scope">
{{ scope.row.huilv ? (10000 / scope.row.huilv).toFixed(6) : ''}}
</template>
</el-table-column>
<el-table-column label="100人民币兑外币汇率" align="center" prop="exchangeToFc" />
<el-table-column :label="$t('排序')" align="center" prop="aorder" />
<!-- <el-table-column label="" align="center" prop="createAt" width="180">-->
<!-- <template slot-scope="scope">-->
......
<template>
<div>
<el-descriptions :column="4">
<el-descriptions-item :label="$t('客户编号')">{{detail.customerId}}</el-descriptions-item>
<el-descriptions-item :label="$t('客户编号')">{{detail.customerNumber}}</el-descriptions-item>
<el-descriptions-item :label="$t('客户名称')">{{detail.customerName}}</el-descriptions-item>
<el-descriptions-item :label="$t('跟进客服')">{{detail.followUpSalesmanName}}</el-descriptions-item>
<el-descriptions-item :label="$t('创建时间')">{{detail.createTime|parseTime}}</el-descriptions-item>
<el-descriptions-item :label="$t('创建时间')">{{parseTime(detail.customerCreateTime)}}</el-descriptions-item>
<el-descriptions-item :span="2" :label="$t('客户原计划掉入公海池时间')">{{parseTime(detail.orgEstimateEnterOpenSeaTime)}}</el-descriptions-item>
<el-descriptions-item :span="2" :label="$t('申请延期后时间')">{{parseTime(detail.estimateEnterOpenSeaTime)}}</el-descriptions-item>
<el-descriptions-item :label="$t('申请凭证')" :span="4">
<el-image v-for="(item, index) in pictures" :key="index" :src="item" style="width:100px; height:100px" :preview-src-list="pictures"></el-image>
</el-descriptions-item>
<el-descriptions-item :label="$t('申请原因')" :span="4">{{detail.reason}}</el-descriptions-item>
</el-descriptions>
</div>
......@@ -16,7 +20,6 @@
import { getApproval } from '@/api/ecw/customer';
import {parseTime} from '@/utils/ruoyi'
export default {
filters: {parseTime},
props:{
id: [String, Number]
},
......@@ -36,6 +39,7 @@ export default {
}
},
created(){
parseTime,
getApproval(this.id).then(res => {
this.info = res.data
})
......
......@@ -114,9 +114,8 @@
</el-col>
<el-col :span="12">
<el-form-item :label="$t('客户经理')" prop="customerService">
{{$route.nam}}
<el-select v-model="form.customerService" :placeholder="$t('请选择客户经理')" :disabled="((customerId !== '0' && $route.name !== 'allocatedCustomerEdit')) || isCustomerServiceConfirmed">
<el-option v-for="item in serviceUserList"
<el-option v-for="item in !(((customerId !== '0' && $route.name !== 'allocatedCustomerEdit')) || isCustomerServiceConfirmed) ? serviceUserList : allSimplList"
:key="item.id" :label="item.nickname" :value="item.id" />
</el-select>
</el-form-item>
......@@ -151,7 +150,7 @@
<el-form-item :label="$t('创建人')" prop="founder">
<el-select v-model="form.founder" disabled>
<el-option
v-for="item in serviceUserList"
v-for="item in allSimplList"
:key="item.id"
:label="item.nickname"
:value="item.id">
......@@ -215,10 +214,10 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item v-hasPermi="['ecw:customer:query-card']" :label="$t('身份证姓名')">
<el-form-item v-hasPermi="['ecw:customer:edit-card']" :label="$t('身份证姓名')">
<el-input v-model="form.carName"></el-input>
</el-form-item>
<el-form-item v-hasPermi="['ecw:customer:query-card']" :label="$t('身份证号码')">
<el-form-item v-hasPermi="['ecw:customer:edit-card']" :label="$t('身份证号码')">
<el-input v-model="form.carNo" ></el-input>
</el-form-item>
</el-col>
......@@ -443,7 +442,7 @@ import {getTradeCityList} from "@/api/ecw/region"
import {getWarehouseList} from "@/api/ecw/warehouse"
import CustomerLineTable from '@/components/CustomerLineTable'
import {getCustomerSelect} from "@/api/ecw/customer"
import {listServiceUser, listSimpleUsers} from "@/api/system/user"
import {listAllSimpl, listServiceUser, listSimpleUsers} from "@/api/system/user"
import { getZhongPaoBest, getZhongPaoPage } from '@/api/ecw/zhongPao'
import { getCustomerContactsListByCustomer } from '@/api/ecw/customerContacts'
import { getCountryListAll } from '@/api/ecw/country'
......@@ -529,6 +528,9 @@ export default {
listServiceUser().then(r => {
this.serviceUserList = r.data
})
listAllSimpl().then(r => {
this.allSimplList = r.data
})
getCountryListAll().then(r => {
this.countryList = r.data
})
......@@ -586,7 +588,8 @@ export default {
paoLines: [], // 泡货线路
memberList:[],//会员列表
selectMemberList:[],//选中会员列表
serviceNetworkList:[] //网点列表
serviceNetworkList:[], //网点列表
allSimplList:[]
}
},
......
......@@ -56,8 +56,8 @@
<el-option v-for="(item,index) in creditList" :label="isChinese ? item.nameZh : item.nameEn" :key="index" :value="item.id" ></el-option>
</el-select>
</el-form-item>
<el-form-item v-if="$route.path === '/customer/customer'" :label="$t('市场获客')" prop="department">
<dict-selector :type="DICT_TYPE.ECW_CUSTOMER_RESOURCE_TYPE" v-model="queryParams.marketType" formatter="number"></dict-selector>
<el-form-item :label="$t('市场获客')" prop="department">
<dict-selector clearable :type="DICT_TYPE.ECW_CUSTOMER_RESOURCE_TYPE" v-model="queryParams.marketType" formatter="number"></dict-selector>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
......@@ -69,15 +69,15 @@
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['ecw:customer:create']">{{$t('新增')}}</el-button>
v-hasPermi="[ selectAuthorityFn('ecw:customer:create')]">{{$t('新增')}}</el-button>
</el-col>
<el-col :span="1.5" >
<el-button :disabled="selectCustomerList.length === 0" type="primary" size="mini" @click="transferShow = true;"
v-hasPermi="['ecw:customer:export']">{{$t('批量移交')}}</el-button>
v-hasPermi="[selectAuthorityFn('ecw:customer:batch-transfer')]">{{$t('批量移交')}}</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['ecw:customer:export']">{{$t('导出')}}</el-button>
v-hasPermi="[selectAuthorityFn('ecw:customer:export')]">{{$t('导出')}}</el-button>
</el-col>
<el-col :span="1.5">
<el-button :disabled="!selectCustomerList.length" @click="setChangeCustomerAir(true)" v-if="$route.path === '/customer/customer'" type="primary" plain size="mini" :loading="exportLoading"
......@@ -149,14 +149,14 @@
<!-- <el-button size="mini" type="text" v-show="'development' === env && scope.row.isInOpenSea" @click="seasPond(scope.row)"-->
<!-- v-hasPermi="['ecw:customer:query']">{{$t('掉入公海池')}}</el-button>-->
<el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row)"
v-hasPermi="['ecw:customer:query']">{{$t('查看')}}</el-button>
v-hasPermi="[selectAuthorityFn('ecw:customer:query')]">{{$t('查看')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['ecw:customer:update']">{{$t('修改')}}</el-button>
v-hasPermi="[selectAuthorityFn('ecw:customer:update')]">{{$t('修改')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['ecw:customer:delete']">{{$t('删除')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-collection" @click="followUp(scope.row)">{{$t('跟进')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-user" @click="complaint(scope.row)">{{$t('客诉')}}</el-button>
<el-button :disabled="scope.row.isInOpenSea" size="mini" type="text" icon="el-icon-user" @click="delay(scope.row)">{{$t('延期')}}</el-button>
v-hasPermi="[selectAuthorityFn('ecw:customer:delete')]">{{$t('删除')}}</el-button>
<el-button size="mini" v-has-permi="[selectAuthorityFn('ecw:customer:follow-up')]" type="text" icon="el-icon-collection" @click="followUp(scope.row)">{{$t('跟进')}}</el-button>
<el-button size="mini" v-has-permi="[selectAuthorityFn('ecw:customer:customer-complaint')]" type="text" icon="el-icon-user" @click="complaint(scope.row)">{{$t('客诉')}}</el-button>
<el-button :disabled="scope.row.isInOpenSea" v-has-permi="[selectAuthorityFn('ecw:customer:postpone')]" size="mini" type="text" icon="el-icon-user" @click="delay(scope.row)">{{$t('延期')}}</el-button>
</template>
</el-table-column>
</el-table>
......@@ -610,6 +610,22 @@ export default {
},
isChinese(){
return this.$i18n.locale === 'zh_CN'
},
authorityFn(){
let i = ''
switch (this.$route.path){
case '/customer/department-customers':
i = 'dep-'
break;
}
return i
},
selectAuthorityFn(){
return (val)=>{
let t = val.split(":")
t[t.length - 1] = this.authorityFn + t[t.length - 1]
return t.join(":")
}
}
},
watch:{
......@@ -647,7 +663,7 @@ export default {
}).then(r =>{
console.log(r)
if(r.code === 0){
this.$message.success(isAir ? '设为空运客户成功!' : '设为非空运客户成功!')
this.$message.success(isAir ? '设为空运客户成功!' : '设为非空运客户成功!')
this.selectCustomerList = []
this.getList()
}
......@@ -680,7 +696,6 @@ export default {
},
/** 查询列表 */
getList() {
console.log(this.$route.path,'path')
this.loading = true;
// 处理查询参数
let params = {...this.queryParams};
......
......@@ -25,11 +25,13 @@
<el-date-picker clearable v-model="dateRangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" />
</el-form-item>
<el-form-item :label="$t('市场获客')" prop="department">
<dict-selector clearable :type="DICT_TYPE.ECW_CUSTOMER_RESOURCE_TYPE" v-model="queryParams.marketType" formatter="number"></dict-selector>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{$t('重置')}}</el-button>
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['ecw:customer:export']">{{$t('导出')}}</el-button>
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading" v-hasPermi="['ecw:customer:indirect-export']">{{$t('导出')}}</el-button>
</el-form-item>
</el-form>
......@@ -76,7 +78,7 @@
</el-table-column>
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-user" @click="delay(scope.row)">{{$t('完善')}}</el-button>
<el-button v-has-permi="['ecw:customer:indirect:perfect']" size="mini" type="text" icon="el-icon-user" @click="delay(scope.row)">{{$t('完善')}}</el-button>
</template>
</el-table-column>
</el-table>
......@@ -127,6 +129,7 @@ export default {
name: null,
source: null,
customerService: null,
marketType:null
},
// 网点
nodeList: [],
......
......@@ -5,11 +5,11 @@
<div style="display: flex;justify-content: space-between;align-items: flex-end;">
<h2>{{$t('查看')}}</h2>
<div>
<el-button type="primary" size="small" @click="$router.push('/customer/edit/' + id)">{{$t('编辑')}}</el-button>
<el-button @click="$router.push('/offer/create')" type="primary" size="small">{{$t('报价')}}</el-button>
<el-button type="primary" size="small" @click="$refs['customerFollow'].customerFollow.dialogVisible = true">{{$t('跟进')}}</el-button>
<el-button type="primary" size="small" @click="$refs['customerComplaint'].handleAdd()">{{$t('客诉')}}</el-button>
<el-button v-hasPermi="['ecw:customer:delete']" type="danger" size="small" @click="deleteCustomerFn()">{{$t('删除')}}</el-button>
<el-button type="primary" size="small" v-has-permi="['ecw:customer:query-edit']" @click="$router.push('/customer/edit/' + id)">{{$t('编辑')}}</el-button>
<el-button v-has-permi="['ecw:customer:query-quoted-price']" @click="$router.push('/offer/create')" type="primary" size="small">{{$t('报价')}}</el-button>
<el-button v-has-permi="['ecw:customer:query-follow-up']" type="primary" size="small" @click="$refs['customerFollow'].customerFollow.dialogVisible = true">{{$t('跟进')}}</el-button>
<el-button v-has-permi="['ecw:customer:query-customer-complaint']" type="primary" size="small" @click="$refs['customerComplaint'].handleAdd()">{{$t('客诉')}}</el-button>
<el-button v-hasPermi="['ecw:customer:query-delete']" type="danger" size="small" @click="deleteCustomerFn()">{{$t('删除')}}</el-button>
</div>
</div>
<el-card style="margin-top: 15px;">
......@@ -35,7 +35,7 @@
{{ getDictDatas2(DICT_TYPE.CUSTOMER_TYPE, (customer.type||'').split(',')).map(e => isChinese ? e.label : e.labelEn).join(', ')}}
</el-descriptions-item>
<!-- <el-descriptions-item :label="$t('联系方式')">{{ customer }}</el-descriptions-item>-->
<el-descriptions-item :label="$t('推介人')">{{ promoter }}</el-descriptions-item>
<el-descriptions-item :label="$t('推介人')">{{ customer.promoterName }}</el-descriptions-item>
<el-descriptions-item :label="$t('客户经理')">{{customerService }}</el-descriptions-item>
<el-descriptions-item :label="$t('公司名称')">{{ customer.company }}</el-descriptions-item>
<el-descriptions-item :label="$t('联系地址')">{{ customer.address }}</el-descriptions-item>
......@@ -47,6 +47,8 @@
<el-image v-show="!!customer.picture" :src="customer.picture" style="width: 100px;height: 100px"></el-image>
</el-descriptions-item>
<el-descriptions-item :label="$t('备注')">{{ customer.remarks }}</el-descriptions-item>
<el-descriptions-item v-if="permissions.includes('ecw:customer:query-card')" :label="$t('身份证姓名')">{{ customer.carName }}</el-descriptions-item>
<el-descriptions-item v-if="permissions.includes('ecw:customer:query-card')" :label="$t('身份证号码')">{{ customer.carNo }}</el-descriptions-item>
<!-- <el-descriptions-item :label="$t('信用等级')">{{ customer }}</el-descriptions-item>-->
</el-descriptions>
</el-card>
......@@ -458,9 +460,6 @@ import {getCountry} from "@/api/ecw/country"
export default {
name: 'query',
props: {
customerId: String
},
components: {
Template,
CustomerFollow,
......@@ -493,7 +492,7 @@ export default {
this.productTypeList = r.data
})
getCustomerSelect().then(r => {
getCustomerSelect({pageSize:1000,pageNo:1}).then(r => {
this.customerSelect = r.data.list
})
......@@ -616,6 +615,12 @@ export default {
}
},
computed: {
permissions(){
return this.$store.state.user.permissions
},
customerId(){
return this.$route.params.customerId;
},
isChinese(){
return this.$i18n.locale === 'zh_CN'
},
......
......@@ -64,7 +64,7 @@
<div style="flex: 1">
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{$t('重置')}}</el-button></div>
<div style="flex: 1; text-align: right;">
<div style="flex: 1; text-align: right;" v-has-permi="['ecw:customer:commission-set']">
<router-link :to="'/customerCommissionInfo/'+ 0 ">
<el-button type="primary">{{$t('佣金设置')}}</el-button>
</router-link>
......@@ -126,8 +126,8 @@
</el-table-column>
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width" width="200px">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-view" @click="handleUpdate(scope.row)">{{ $t('查看') }}</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)">{{$t('删除')}}</el-button>
<el-button v-has-permi="['ecw:customer:commission-query']" size="mini" type="text" icon="el-icon-view" @click="handleUpdate(scope.row)">{{ $t('查看') }}</el-button>
<el-button v-has-permi="['ecw:customer:commission-delete']" size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)">{{$t('删除')}}</el-button>
</template>
</el-table-column>
</el-table>
......
......@@ -54,6 +54,9 @@
<el-option v-for="(item,index) in creditList" :label=" isChinese ? item.nameZh : item.nameEn" :key="index" :value="item.id" ></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('市场获客')" prop="department">
<dict-selector clearable :type="DICT_TYPE.ECW_CUSTOMER_RESOURCE_TYPE" v-model="queryParams.marketType" formatter="number"></dict-selector>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{$t('重置')}}</el-button>
......@@ -64,11 +67,11 @@
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="$router.push({path:'/customer/add-edit/0',query:{isCustomerServiceConfirmed:true,}})"
v-hasPermi="['ecw:customer:create']">{{$t('新增')}}</el-button>
v-hasPermi="['ecw:customer: treat-create']">{{$t('新增')}}</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['ecw:customer:export']">{{$t('导出')}}</el-button>
v-hasPermi="['ecw:customer:treat-export']">{{$t('导出')}}</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
......@@ -114,16 +117,16 @@
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" type="text" @click="handleConfirmService(scope.row)"
v-hasPermi="['ecw:customer:update']">{{$t('确认接收')}}</el-button>
v-hasPermi="['ecw:customer:treat-accept']">{{$t('确认接收')}}</el-button>
<el-button size="mini" type="text" @click="handOver(scope.row)"
v-hasPermi="['ecw:customer:update']">{{$t('移交')}}</el-button>
v-hasPermi="['ecw:customer:treat-transfer']">{{$t('移交')}}</el-button>
<router-link style="margin: 0 10px;" to="/offer/create">
<el-button size="mini" type="text">
<el-button v-has-permi="['ecw:customer:treat-quoted-price']" size="mini" type="text">
{{$t('报价')}}
</el-button>
</router-link>
<el-button size="mini" type="text" @click="handleUpdate(scope.row)"
v-hasPermi="['ecw:customer:update']">{{$t('完善')}}</el-button>
v-hasPermi="['ecw:customer:treat-perfect']">{{$t('完善')}}</el-button>
</template>
</el-table-column>
</el-table>
......@@ -365,6 +368,9 @@ export default {
this.getList();
},
computed:{
DICT_TYPE() {
return DICT_TYPE
},
isChinese(){
return this.$i18n.locale === 'zh_CN'
},
......@@ -402,6 +408,7 @@ export default {
department: null,
creditLevel:null,
country:null,
marketType:null,
},
// 表单参数
form: {},
......@@ -435,6 +442,7 @@ export default {
})
},
methods: {
getDictDatas,
countryFormatter(row, column, cellValue) {
const country = this.countryList.find((e) => e.id === cellValue)
return this.isChinese ? country?.nameZh : country?.nameEn
......
......@@ -55,6 +55,9 @@
<el-option v-for="(item,index) in creditList" :label="isChinese ? item.nameZh : item.nameEn" :key="index" :value="item.id" ></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('市场获客')" prop="department">
<dict-selector clearable :type="DICT_TYPE.ECW_CUSTOMER_RESOURCE_TYPE" v-model="queryParams.marketType" formatter="number"></dict-selector>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{$t('重置')}}</el-button>
......@@ -65,16 +68,16 @@
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['ecw:customer:create']">{{$t('新增')}}</el-button>
v-hasPermi="['ecw:customer:distribution-create']">{{$t('新增')}}</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['ecw:customer:export']">{{$t('导出')}}</el-button>
v-hasPermi="['ecw:customer:distribution-export']">{{$t('导出')}}</el-button>
</el-col>
<el-col :span="1.5">
<el-col :span="1.5" >
<el-button :disabled="selectCustomerList.length === 0" type="primary" size="mini" @click="batchTransferShow = true;"
v-hasPermi="['ecw:customer:export']">{{$t('批量移交')}}</el-button>
v-hasPermi="['ecw:customer:distribution-transfer']">{{$t('批量移交')}}</el-button>
</el-col>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
......@@ -122,11 +125,11 @@
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['ecw:customer:update']">{{$t('编辑')}}</el-button>
v-hasPermi="['ecw:customer:distribution-update']">{{$t('编辑')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['ecw:customer:delete']">{{$t('删除')}}</el-button>
v-hasPermi="['ecw:customer:distribution-delete']">{{$t('删除')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="distribution(scope.row)"
v-hasPermi="['ecw:customer:delete']">{{$t('分配客服')}}</el-button>
v-hasPermi="['ecw:customer:distribution-customer-service']">{{$t('分配客服')}}</el-button>
</template>
</el-table-column>
</el-table>
......@@ -212,6 +215,7 @@ export default {
department: null,
creditLevel:null,
country:null,
marketType:null,
},
// 表单参数
form: {},
......@@ -394,7 +398,7 @@ export default {
/** 移交按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm(this.$t('是否确认删除客户编号为"') + id + this.$t('"的数据项?')).then(function() {
this.$modal.confirm(this.$t('是否确认删除客户编号为"') + row.number + this.$t('"的数据项?')).then(function() {
return deleteCustomer(id);
}).then(() => {
this.getList();
......
......@@ -229,7 +229,7 @@ import { parseTime } from '@/utils/ruoyi';
for (let index in this.channelList) {
let channelItem = this.channelList[index];
if (channelItem.channelId == shippingChannelId) {
return $l(channelItem, 'name');
return this.$l(channelItem, 'name');
}
}
return '/'
......
<template>
<div class="app-container">
<el-card>
<div slot="header" class="card-title">{{ $t('银行实收明细详情') }}</div>
<el-form ref="addForm" :data="addForm" label-width="250px">
<el-form-item :label="$t('收款单号')">{{ form.receiptNo }}</el-form-item>
<el-form-item :label="$t('剩余应收金额')">
<template v-if="surplusData.length==0"> 0</template>
<div v-if="surplusData.length>0">
<div v-for="(amount, currency) in surplusData" :key="currency">
<span v-if="amount"> {{amount}}{{getCurrencyLabel(currency)}}</span>
</div>
</div>
</el-form-item>
<el-form-item :label="$t('收款账户')" prop="accountNo">
<span>{{ addForm.accountNo }}</span>
</el-form-item>
<el-form-item :label="$t('实收日期')" prop="amountDate">
<span>{{ addForm.amountDate }}</span>
</el-form-item>
<div style="display: flex;">
<el-form-item :label="$t('实收')" prop="amount">
<span>{{ addForm.amount }}</span>
</el-form-item>
<el-form-item label-width="0px" prop="currencyId">
<el-select v-model="addForm.currencyId" :disabled="true">
<el-option
v-for="item in currencyList"
:key="item.id"
:label="$i18n.locale=='zh_CN'?item.titleZh:item.titleEn"
:value="item.id"
/>
</el-select>
</el-form-item>
</div>
<el-form-item
v-if="showCurrencyId != addForm.currencyId"
prop="rate"
>
<template slot="label">
<span :title="$t('实收币种与核销基准币种一样时,无需填写汇率,不一样需要填写汇率')">{{ $t('兑核销基准币种汇率') }}{{getCurrencyLabel(showCurrencyId)}}</span>
</template>
<span>{{ addForm.rate}}</span>
</el-form-item>
<el-form-item v-if="showCurrencyId != addForm.currencyId" >
<template slot="label">
{{ $t('兑核销基准币种金额') }}{{getCurrencyLabel(showCurrencyId)}}
</template>
<span>{{ addForm.writeOffAmount?parseFloat(addForm.writeOffAmount).toFixed(6):'' }}</span>
</el-form-item>
<el-form-item :label="$t('水单附件')" prop="attr">
<div>
<div v-for="(v, i) in addForm.attr" :key="i"><el-link :href="v.url" type="primary" target="_blank">{{ v.name }}</el-link></div>
</div>
</el-form-item>
<el-form-item :label="$t('水单号')" prop="billNo">
<span>{{ addForm.billNo }}</span>
</el-form-item>
</el-form>
</el-card>
<div slot="header" class="bpm-title">{{ $t('审核流程') }}</div>
<work-flow xmlkey="merge_order" v-model="selectedUsers"></work-flow>
<div slot="footer" style="margin: 20px 0">
<el-button type="primary" @click="submitForm(0)">{{$t('提交审核')}}</el-button>
<el-button type="primary" @click="$store.dispatch('tagsView/delCurrentView')">{{ $t('关闭') }}</el-button>
</div>
</div>
</template>
<script>
import { getReceivableItem ,getInvoicingItem,getReceiptAccountList,getReceiptInfoByIds} from "@/api/ecw/financial";
import { getCurrencyPage } from "@/api/ecw/currency";
import WorkFlow from '@/components/WorkFlow/'
import NP from 'number-precision'
export default {
components: {
WorkFlow
},
data() {
return {
addForm:{},
id:0,
detailed:[],
currencyList: [],
surplusData:[],
receiptAccountList:[],
selectedUsers:[],
list:[],
params: {
page: 1,
rows: 20,
},
bankId:0,
form:{}
}
},
async created() {
if (this.$route.query.id) {
this.id = this.$route.query.id;
}
if (this.$route.query.bankId) {
this.bankId = this.$route.query.bankId;
}
await getInvoicingItem({ id: this.id }).then(res => {
this.list = [...res.data]
})
await getReceiptAccountList({ id: this.id }).then(res => {
this.receiptAccountList = [...res.data]
})
await getCurrencyPage(this.params).then(res => this.currencyList = res.data.list)
await this.getList()
await getReceiptInfoByIds({ id: this.id }).then(res => {
this.form = res.data
})
},
methods:{
getList() {
getReceivableItem({ id: this.id }).then(res => {
this.detailed = res.data.map(v => ({
...v,
amountDate: this.parseTime(v.amountDate, '{y}-{m}-{d}'),
accountNo: +v.accountNo,
rate:parseFloat(v.rate).toFixed(6),
attr: v.attr ? v.attr.split(',').map(t => ({ name: t.slice(t.lastIndexOf('/') + 1), url: t })) : []
}))
this.addForm = this.detailed.find((itt) => itt.id == this.bankId);
this.handleAddReceiptItem()
})
},
getCurrencyLabel(id){
var label = this.currencyList.filter(item=>item.id == id)
if(label.length>0) return this.$i18n.locale=='zh_CN'?label[0].titleZh:label[0].titleEn
return ''
},
handleAddReceiptItem() {
this.surplusData = []
// 已收
let recepted = []
this.detailed.forEach(item => {
if(!recepted[item.currencyId]){
recepted[item.currencyId] = item.amount
}else recepted[item.currencyId] = NP.plus(recepted[item.currencyId], item.amount)
})
console.log('rece',recepted)
// 应收
let collom = []
// 从期望收费金额中提取应收币种和金额
this.currencyList.forEach((item,index)=>{
var nairaListByList = this.list.filter(v => v.currencyId === item.id)
if(nairaListByList.length>0){
var discountNaira = nairaListByList.reduce((total, currentValue) => NP.plus(total, currentValue.discountTotal || 0), 0)
}
var dollarList = this.receiptAccountList.filter(v => v.collectionCurrencyId == item.id)
if(dollarList.length>0){
var dollar = dollarList.reduce((total, currentValue) => NP.plus(total, currentValue.collectionAmount), 0).toFixed(2)
if(dollar){
collom[item.id] = dollar
}else{
collom.push(0)
}
}
})
console.log('collom',collom)
recepted.forEach((amount,currency)=>{
if(amount){
if(collom[currency]){
if((collom[currency]-amount)!=0) this.surplusData[currency] = +parseFloat((collom[currency]-amount).toPrecision(12))
}else{
this.surplusData[currency] = -amount
}
}
})
collom.forEach((amount,currency)=>{
if(amount){
if(!this.surplusData[currency]){
if(recepted[currency]){
if((amount-recepted[currency])!=0) this.surplusData[currency] = +parseFloat((amount-recepted[currency]).toPrecision(12))
}else{
this.surplusData[currency] = amount
}
}
}
})
},
},
computed: {
showCurrencyId() {
let fieldList = [];
let groupList=[];
this.list.map((element)=>{
if(fieldList.indexOf(element['currencyId'])===-1){
fieldList.push(element['currencyId'])
}
})
for(let i=0;i<fieldList.length;i++){
let arr = this.list.filter((element)=>{
return element['currencyId']===fieldList[i];
})
groupList.push({
currencyId:arr[0].currencyId,
list:arr
})
}
if (groupList.length === 1) return groupList[0].currencyId
else return 1
},
}
}
</script>
<style>
.card {
margin-top: 20px;
}
.dialog-footer {
text-align: left;
}
.card-title {
font-size: 18px;
font-weight: bold;
}
.bpm-title{
font-size: 20px;
font-weight: bold;
color:#666;
margin:20px 0;
}
</style>
......@@ -248,8 +248,15 @@
</el-descriptions>
</el-form>
</el-card>
<!-- <div slot="header" class="bpm-title">{{ $t('审核流程') }}</div>
<work-flow xmlkey="merge_order" v-model="selectedUsers"></work-flow>
<div slot="footer" style="margin: 20px 0">
<el-button type="primary" @click="submitForm(0)">{{$t('提交审核')}}</el-button>
<el-button type="primary" @click="$store.dispatch('tagsView/delCurrentView')">{{ $t('关闭') }}</el-button>
</div> -->
<div slot="footer" style="margin: 20px 0">
<!-- <el-button type="primary" @click="submitDraft">{{ $t('保 存') }}</el-button> -->
<el-button type="primary" @click="submitDraft">{{ $t('保 存') }}</el-button>
<el-button type="primary" @click="submitForm">{{id==0?$t('新增'):$t('编辑')}}</el-button>
</div>
<el-dialog
......@@ -312,7 +319,7 @@
/>
</el-form-item>
<!-- </el-row> -->
<!-- <el-form-item :label="$t('出货渠道')">
<el-form-item :label="$t('出货渠道')">
<el-select
v-model="queryParams.channelId"
:placeholder="$t('请选择出货渠道')"
......@@ -326,8 +333,8 @@
</el-select>
</el-form-item>
</el-row>
<el-row>
<el-form-item :label="$t('报关方式')">
<!-- <el-row> -->
<!-- <el-form-item :label="$t('报关方式')">
<dict-selector
:type="DICT_TYPE.ECW_CUSTOMS_TYPE"
v-model="queryParams.customsType"
......@@ -345,20 +352,21 @@
@change="consignor = $event"
/>
</el-form-item>
</el-row>
<el-form-item :label="$t('订单号')" prop="orderNo">
</el-row> -->
<el-form-item :label="$t('订单号')" prop="orderNo">
<el-input
v-model="queryParams.orderNo"
:placeholder="$t('请输入订单号')"
:placeholder="$t('请输入订单号')"
clearable
/>
</el-form-item> -->
</el-form-item>
<el-form-item :label="$t('编号')" prop="selfNo">
<el-form-item :label="$t('业务编号')" prop="selfNo">
<el-input
v-model="queryParams.selfNo"
:placeholder="$t('请输入编号')"
:placeholder="$t('请输入业务编号')"
clearable
@blur="handleQuery"
/>
</el-form-item>
......@@ -377,7 +385,7 @@
row-key="id"
>
<el-table-column type="selection" width="55" :reserve-selection="true"> </el-table-column>
<el-table-column :label="$t('编号')" align="center" prop="payableNo" />
<el-table-column :label="$t('业务编号')" align="center" prop="payableNo" />
<el-table-column :label="$t('货柜号')" align="center" prop="containerNo" />
<el-table-column :label="$t('供应商')" align="center" prop="supplierName" />
<el-table-column :label="$t('费用类型')" align="center" prop="feeType">
......@@ -425,11 +433,12 @@ import { getPayableList, getPayableInfoByIds, createPayment, getPaymentInfoByIds
import { getCurrencyPage } from "@/api/ecw/currency";
import NP from 'number-precision'
import {getWarehouseList} from '@/api/ecw/warehouse'
import WorkFlow from '@/components/WorkFlow/'
export default {
name: "CreatPayment",
components: {
CustomerSelector
CustomerSelector,WorkFlow
},
data() {
return {
......@@ -461,6 +470,7 @@ export default {
allSupplier: [],
currencyList: [],
warehouseList:[],
selectedUsers:[]
};
},
async created() {
......@@ -822,4 +832,10 @@ export default {
font-size: 18px;
font-weight: bold;
}
.bpm-title{
font-size: 20px;
font-weight: bold;
color:#666;
margin:20px 0;
}
</style>
......@@ -120,6 +120,7 @@
<el-button
style="margin-left: 10px"
type="success"
v-hasPermi="['ecw:payable:create']"
@click="handleAdd(0)"
>{{ $t('新增请款单') }}</el-button
>
......@@ -153,13 +154,15 @@
class-name="small-padding fixed-width"
>
<template slot-scope="scope">
<el-button size="mini" type="text" @click="editClick(scope.row)"
>{{ $t('编辑') }}</el-button
>
<el-button size="mini" type="text" @click="handleAdd(scope.row.id)"
>{{ $t('请款') }}</el-button
>
<el-button size="mini" type="text" @click="deleteClick(scope.row)">{{ $t('删除') }}</el-button>
<el-button
size="mini"
type="text"
v-hasPermi="['ecw:payable:edit']"
@click="editClick(scope.row)"
>{{ $t('编辑') }}</el-button>
<el-button size="mini" type="text" v-hasPermi="['ecw:payable:add']" @click="handleAdd(scope.row.id)"
>{{ $t('请款') }}</el-button>
<el-button size="mini" type="text" v-hasPermi="['ecw:payable:delete']" @click="deleteClick(scope.row)">{{ $t('删除') }}</el-button>
</template>
</el-table-column>
</el-table>
......
......@@ -141,17 +141,17 @@
class-name="small-padding fixed-width"
>
<template slot-scope="scope">
<el-button v-if="scope.row.state == 1 || scope.row.state == 3" size="mini" @click="handleAdd(scope.row.id)" type="text">{{ $t('编辑') }}</el-button>
<el-button v-if="scope.row.state == 1 || scope.row.state == 3" size="mini" v-hasPermi="['ecw:payment:update']" type="text" @click="examineClick(scope.row.id)">{{ $t('审核') }}</el-button>
<el-button v-if="scope.row.state == 1 || scope.row.state == 3" size="mini" @click="handleAdd(scope.row.id)" v-hasPermi="['ecw:paymentVoucher:edit']" type="text">{{ $t('编辑') }}</el-button>
<el-button v-if="scope.row.state == 1 || scope.row.state == 3" size="mini" v-hasPermi="['ecw:paymentVoucher:process']" type="text" @click="examineClick(scope.row.id)">{{ $t('审核') }}</el-button>
<el-button v-if="scope.row.state == 2" size="mini" type="text" v-hasPermi="['ecw:payment:update']" @click="verifyCancelClick(scope.row)">{{ $t('反审核') }}</el-button>
<el-button v-if="scope.row.state == 2" size="mini" type="text" v-hasPermi="['ecw:payment:update']" @click="verificationClick(scope.row)">{{ $t('核销') }}</el-button>
<el-button v-if="scope.row.state == 2" size="mini" type="text" v-hasPermi="['ecw:paymentVoucher:print']" @click="verifyCancelClick(scope.row)">{{ $t('反审核') }}</el-button>
<el-button v-if="scope.row.state == 2" size="mini" type="text" v-hasPermi="['ecw:paymentVoucher:writeOff']" @click="verificationClick(scope.row)">{{ $t('核销') }}</el-button>
<el-button v-if="scope.row.state == 4" size="mini" type="text" v-hasPermi="['ecw:payment:update']" @click="verificationCancelClick(scope.row)">{{ $t('反核销') }}</el-button>
<el-button v-if="scope.row.state == 4" size="mini" type="text" v-hasPermi="['ecw:paymentVoucher:cancelWriteOff']" @click="verificationCancelClick(scope.row)">{{ $t('反核销') }}</el-button>
<!-- <el-button v-if="scope.row.state == 3" size="mini" type="text">{{ $t('开票') }}</el-button> -->
<el-button size="mini" type="text" @click="toprint(scope.row.id)" v-hasPermi="['ecw:payment:query']">{{ $t('打印') }}</el-button>
<el-button v-if="scope.row.state == 1 || scope.row.state == 3" size="mini" type="text" v-hasPermi="['ecw:payment:delete']" @click="deleteClick(scope.row)">{{ $t('删除') }}</el-button>
<el-button size="mini" type="text" @click="toprint(scope.row.id)" v-hasPermi="['ecw:paymentVoucher:print']">{{ $t('打印') }}</el-button>
<el-button v-if="scope.row.state == 1 || scope.row.state == 3" size="mini" type="text" v-hasPermi="['ecw:paymentVoucher:delete']" @click="deleteClick(scope.row)">{{ $t('删除') }}</el-button>
<!-- <el-button size="mini" type="text" @click="open = true">{{ $t('导出订单') }}</el-button> -->
</template>
</el-table-column>
......
......@@ -218,8 +218,8 @@
<el-card class="card">
<div slot="header" class="card-title">{{ $t('银行收款明细') }}</div>
<div>
<el-button type="primary" plain size="mini" @click="batchVerification" v-hasPermi="['ecw:verification:update']" style="padding: 10px; margin-bottom: 10px">{{ $t('批量核销') }}</el-button>
<el-button type="primary" plain size="mini" @click="handleAddReceiptItem" style="padding: 10px; margin-bottom: 10px">{{ $t('添加收款明细') }}</el-button>
<el-button type="primary" plain size="mini" @click="batchVerification" v-hasPermi="['ecw:payment:detail:batchWriteOff']" style="padding: 10px; margin-bottom: 10px">{{ $t('批量核销') }}</el-button>
<el-button type="primary" plain size="mini" @click="handleAddReceiptItem" v-hasPermi="['ecw:payment:detail:addBank']" style="padding: 10px; margin-bottom: 10px">{{ $t('添加收款明细') }}</el-button>
</div>
<el-table ref="multipleTable" :data="detailed" border row-key="id" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="50" :reserve-selection="true"> </el-table-column>
......@@ -256,11 +256,11 @@
</el-table-column>
<el-table-column :label="$t('操作')" align="center" width="200">
<template slot-scope="scope">
<el-button v-if="scope.row.status == 0" type="text" @click="deleteClick(scope.row)">{{ $t('删除') }}</el-button>
<el-button type="text" @click="detailClick(scope.row)">{{ $t('详情') }}</el-button>
<el-button v-if="scope.row.status == 0" type="text" @click="verificationClick(scope.row)" v-hasPermi="['ecw:verification:update']">{{ $t('核销') }}</el-button>
<el-button v-if="scope.row.status == 1" type="text" @click="verificationCancelClick(scope.row)" v-hasPermi="['ecw:verification:update']">{{ $t('反核销') }}</el-button>
<el-button v-if="scope.row.status == 0" type="text" @click="editClick(scope.row)">{{ $t('编辑') }}</el-button>
<el-button v-if="scope.row.status == 0" v-hasPermi="['ecw:payment:detail:delete']" type="text" @click="deleteClick(scope.row)">{{ $t('删除') }}</el-button>
<el-button type="text" @click="detailClick(scope.row)" v-hasPermi="['ecw:payment:detail:detail']">{{ $t('详情') }}</el-button>
<el-button v-if="scope.row.status == 0" type="text" @click="verificationClick(scope.row)" v-hasPermi="['ecw:payment:detail:writeOff']">{{ $t('核销') }}</el-button>
<el-button v-if="scope.row.status == 1" type="text" @click="verificationCancelClick(scope.row)" v-hasPermi="['ecw:payment:detail:cancelWriteOff']">{{ $t('反核销') }}</el-button>
<el-button v-if="scope.row.status == 0" type="text" @click="editClick(scope.row)" v-hasPermi="['ecw:payment:detail:bankEdit']">{{ $t('编辑') }}</el-button>
</template>
</el-table-column>
</el-table>
......@@ -306,8 +306,8 @@
</el-descriptions>
</el-card>
<div slot="footer" style="margin: 20px 0">
<el-button type="primary" @click="toEdit">{{ $t('编辑') }}</el-button>
<el-button type="primary" @click="verificationAll" v-hasPermi="['ecw:verification:update']">{{ $t('全部核销') }}</el-button>
<el-button type="primary" @click="toEdit" v-hasPermi="['ecw:payment:detail:edit']">{{ $t('编辑') }}</el-button>
<el-button type="primary" @click="verificationAll" v-hasPermi="['ecw:payment:detail:allWriteOff']">{{ $t('全部核销') }}</el-button>
</div>
<el-dialog v-if="openAddDialog" :visible.sync="openAddDialog" :title="dialogTitle" width="50%" append-to-body>
<div style="padding: 0 24px">
......
......@@ -8,6 +8,7 @@
style="float: right; margin-left: 10px"
type="primary"
size="mini"
v-hasPermi="['ecw:receivable:add']"
@click="handleAdd(0)"
>{{ $t('新增收款单') }}</el-button
>
......@@ -232,9 +233,7 @@
class-name="small-padding fixed-width"
>
<template slot-scope="scope">
<el-button size="mini" type="text" @click="handleAdd(scope.row.id)"
>{{ $t('收款') }}</el-button
>
<el-button size="mini" type="text" v-hasPermi="['ecw:receivable:collection']" @click="handleAdd(scope.row.id)" >{{ $t('收款') }}</el-button>
</template>
</el-table-column>
</el-table>
......
......@@ -74,11 +74,11 @@
<span>{{ scope.$index + 1 }}</span>
</template>
</el-table-column>
<el-table-column :label="$t('收款单号')" align="center" prop="receiptNo">
<template slot-scope="scope">
<span style="color: #1890ff;" @click="verificationCancelClick(scope.row)">{{scope.row.receiptNo}}</span>
</template>
</el-table-column>
<el-table-column :label="$t('收款单号')" align="center" prop="receiptNo" />
<!-- <template slot-scope="scope"> -->
<!-- <span style="color: #1890ff;" @click="verificationCancelClick(scope.row)">{{scope.row.receiptNo}}</span> -->
<!-- </template> -->
<!-- </el-table-column> -->
<el-table-column :label="$t('客户名称')" align="center" prop="customerName" />
<el-table-column :label="$t('创建日期')" align="center" prop="createTime">
<template slot-scope="scope">
......@@ -110,10 +110,17 @@
class-name="small-padding fixed-width"
>
<template slot-scope="scope">
<el-button
size="mini"
type="text"
v-hasPermi="['ecw:voucher:see']"
@click="verificationCancelClick(scope.row)"
>{{ $t('查看')}}</el-button>
<el-button
v-if="scope.row.state === 0 || scope.row.state == 1 || scope.row.state == 2 || scope.row.state == 3"
size="mini"
type="text"
v-hasPermi="['ecw:voucher:edit']"
@click="handleAdd(scope.row.id)"
>{{ $t('编辑') }}</el-button
>
......@@ -128,31 +135,33 @@
v-if="scope.row.state == 4 || scope.row.state == 5 || scope.row.state == 6"
size="mini"
type="text"
v-hasPermi="['ecw:voucher:cancelWriteOff']"
@click="verificationCancelClick(scope.row)"
v-hasPermi="['ecw:verification:update']"
>{{ $t('反核销') }}</el-button
>
<el-button
v-if="scope.row.state == 5"
size="mini"
type="text"
v-hasPermi="['ecw:voucher:ballot']"
@click="openInvoice(scope.row.id)"
>{{ $t('开票') }}</el-button
>
<el-button v-if="scope.row.state == 1 || scope.row.state == 2 || scope.row.state == 3" size="mini" type="text" @click="verificationCancelClick(scope.row)">{{ $t('收款') }}</el-button>
<el-button v-if="[0,1,2].indexOf(scope.row.state) > -1" size="mini" type="text" @click="deleteClick(scope.row)">{{ $t('删除') }}</el-button>
<el-button v-if="scope.row.state == 1 || scope.row.state == 2 || scope.row.state == 3" v-hasPermi="['ecw:voucher:payment']" size="mini" type="text" @click="verificationCancelClick(scope.row)">{{ $t('收款') }}</el-button>
<el-button v-if="[0,1,2].indexOf(scope.row.state) > -1" size="mini" type="text" v-hasPermi="['ecw:voucher:delete']" @click="deleteClick(scope.row)">{{ $t('删除') }}</el-button>
<el-button
v-if="scope.row.state != 0"
size="mini"
type="text"
@click="toprint(scope.row.id)"
v-hasPermi="['ecw:verification:create']"
v-hasPermi="['ecw:voucher:print']"
>{{ $t('打印') }}</el-button
>
<el-button
v-if="scope.row.state != 0"
size="mini"
type="text"
v-hasPermi="['ecw:voucher:derive']"
@click="exportReceipt(scope.row.id)"
>{{ $t('导出账单') }}</el-button
>
......
......@@ -50,6 +50,9 @@
<el-option v-for="(item,index) in creditList" :label="isChinese ? item.nameZh : item.nameEn" :key="index" :value="item.id" ></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('市场获客')" prop="department">
<dict-selector clearable :type="DICT_TYPE.ECW_CUSTOMER_RESOURCE_TYPE" v-model="queryParams.marketType" formatter="number"></dict-selector>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{$t('重置')}}</el-button>
......@@ -60,11 +63,11 @@
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['ecw:customer:create']">{{$t('新增')}}</el-button>
v-hasPermi="['ecw:customer:my-create']">{{$t('新增')}}</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['ecw:customer:export']">{{$t('导出')}}</el-button>
v-hasPermi="['ecw:customer:my-export']">{{$t('导出')}}</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
......@@ -116,15 +119,15 @@
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row)"
v-hasPermi="['ecw:customer:query']">{{$t('查看')}}</el-button>
v-hasPermi="['ecw:customer:my-query']">{{$t('查看')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['ecw:customer:update']">{{$t('修改')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-collection" @click="followUp(scope.row)">{{$t('跟进')}}</el-button>
v-hasPermi="['ecw:customer:my-update']">{{$t('修改')}}</el-button>
<el-button size="mini" v-hasPermi="['ecw:customer:my-follow-up']" type="text" icon="el-icon-collection" @click="followUp(scope.row)">{{$t('跟进')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-user"
v-hasPermi="['ecw:customer:update']" @click="complaint(scope.row)">{{$t('客诉')}}</el-button>
v-hasPermi="['ecw:customer:my-customer-complaint']" @click="complaint(scope.row)">{{$t('客诉')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['ecw:customer:delete']">{{$t('删除')}}</el-button>
<el-button :disabled="scope.row.isInOpenSea" size="mini" type="text" icon="el-icon-user" @click="delay(scope.row)">{{$t('延期')}}</el-button>
v-hasPermi="['ecw:customer:my-delete']">{{$t('删除')}}</el-button>
<el-button v-has-permi="['ecw:customer:my-postpone']" :disabled="scope.row.isInOpenSea" size="mini" type="text" icon="el-icon-user" @click="delay(scope.row)">{{$t('延期')}}</el-button>
</template>
</el-table-column>
</el-table>
......@@ -203,6 +206,7 @@ export default {
department: null,
creditLevel:null,
country:null,
marketType: null,
},
// 表单参数
form: {},
......@@ -384,7 +388,7 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm(this.$t('是否确认删除客户编号为"') + id + this.$t('"的数据项?')).then(function() {
this.$modal.confirm(this.$t('是否确认删除客户编号为"') + row.number + this.$t('"的数据项?')).then(function() {
return deleteCustomer(id);
}).then(() => {
this.getList();
......
......@@ -55,6 +55,9 @@
<el-option v-for="(item,index) in creditList" :label="isChinese ? item.nameZh : item.nameEn" :key="index" :value="item.id" ></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('市场获客')" prop="department">
<dict-selector clearable :type="DICT_TYPE.ECW_CUSTOMER_RESOURCE_TYPE" v-model="queryParams.marketType" formatter="number"></dict-selector>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{$t('重置')}}</el-button>
......@@ -65,11 +68,11 @@
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['ecw:customer:create']">{{$t('新增')}}</el-button>
v-hasPermi="['ecw:customer:sea-create']">{{$t('新增')}}</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['ecw:customer:export']">{{$t('导出')}}</el-button>
v-hasPermi="['ecw:customer:sea-export']">{{$t('导出')}}</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
......@@ -121,7 +124,7 @@
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<!-- <el-button size="mini" type="text" @click="distribution(scope.row)">{{$t('移交')}}</el-button>-->
<el-button size="mini" type="text" @click="fishingFn(scope.row)">{{$t('捞取')}}</el-button>
<el-button v-has-permi="['ecw:customer:sea-gain']" size="mini" type="text" @click="fishingFn(scope.row)">{{$t('捞取')}}</el-button>
</template>
</el-table-column>
</el-table>
......@@ -205,6 +208,7 @@ export default {
customerService: null,
status: null,
department: null,
marketType:null,
},
// 表单参数
form: {},
......
......@@ -750,6 +750,21 @@ export default {
arr.push(it)
})
// 没有累加保价费(没有美元计价)但是有保价费则需要加上去
if(!withInsuranceFee && this.fee && this.fee.insuranceFee){
let fee = Decimal(this.fee.insuranceFee)
// 如果没有美元费用,且保价费和其他费用币种相同(都是美元)
if(this.form.otherFeeCurrencyId == 1 && this.form.otherFee){
withOtherFee = true
fee = fee.plus(new Decimal(this.form.otherFee || 0))
}
arr.push({
currencyId: 1,
amount: fee
})
}
// 如果没有累加其他费用,则另外增加货币
if(!withOtherFee && this.form.otherFee){
let fee = {
......@@ -765,13 +780,7 @@ export default {
arr.push(fee)
}
// 没有累加保价费(没有美元计价)但是有保价费则需要加上去
if(!withInsuranceFee && this.fee && this.fee.insuranceFee){
arr.push({
currencyId: 1,
amount: Decimal(this.fee.insuranceFee)
})
}
return arr
},
......
......@@ -122,13 +122,13 @@
<el-dropdown>
<el-button icon="el-icon-plus" circle type="primary"></el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item @click.native="$router.push('detail?offerId=' + scope.row.offerId)" >{{$t('详情')}}</el-dropdown-item>
<el-dropdown-item @click.native="$router.push('detail?offerId=' + scope.row.offerId)" v-hasPermi="['ecw:offer:show']">{{$t('详情')}}</el-dropdown-item>
<el-dropdown-item @click.native="$router.push('edit?id=' + scope.row.offerId)" v-if="[1,2,3,7].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:update']">{{$t('编辑')}}</el-dropdown-item>
<el-dropdown-item @click.native="$router.push('logList?offerId=' + scope.row.offerId)" v-if="[1,3,7].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:update']">{{$t('跟进')}}</el-dropdown-item>
<el-dropdown-item @click.native="$router.push(`result?offerId=${scope.row.offerId}&number=${scope.row.number}`)" v-if="[3,7].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:update']">{{$t('结果')}}</el-dropdown-item>
<el-dropdown-item @click.native="$router.push('/offer/special?offerId=' + scope.row.offerId)" v-if="[1,3,7].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:update']">{{$t('特价')}}</el-dropdown-item>
<el-dropdown-item @click.native="cancel(scope.row.offerId)" v-if="[1,3,7].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:update']">{{$t('取消')}}</el-dropdown-item>
<el-dropdown-item @click.native="recovery(scope.row.offerId)" v-if="[0].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:update']">{{$t('恢复')}}</el-dropdown-item>
<el-dropdown-item @click.native="$router.push('logList?offerId=' + scope.row.offerId)" v-if="[1,3,7].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:loglist']">{{$t('跟进')}}</el-dropdown-item>
<el-dropdown-item @click.native="$router.push(`result?offerId=${scope.row.offerId}&number=${scope.row.number}`)" v-if="[3,7].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:result']">{{$t('结果')}}</el-dropdown-item>
<el-dropdown-item @click.native="$router.push('/offer/special?offerId=' + scope.row.offerId)" v-if="[1,3,7].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:discount','ecw:offer:commission',]">{{$t('特价')}}</el-dropdown-item>
<el-dropdown-item @click.native="cancel(scope.row.offerId)" v-if="[1,3,7].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:cancel']">{{$t('取消')}}</el-dropdown-item>
<el-dropdown-item @click.native="recovery(scope.row.offerId)" v-if="[0].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:recovery']">{{$t('恢复')}}</el-dropdown-item>
<el-dropdown-item @click.native="deleteOffer(scope.row.offerId)" v-if="[0,1,2,3,4,5,6,7].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:delete']">{{$t('删除')}}</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
......
......@@ -89,8 +89,8 @@
<el-table-column
:label="$t('操作')">
<template v-slot="{row}">
<el-button v-if="row.seaFreight > 0" size="mini" type="text" @click="showOfferProdId=row.offerProdId">{{$t('优惠申请')}}</el-button>
<el-button v-if="row.seaFreight > 0" size="mini" type="text" @click="showCommissionProd=row">{{$t('佣金规则')}}</el-button>
<el-button v-hasPermi="['ecw:offer:discount']" v-if="row.seaFreight > 0" size="mini" type="text" @click="showOfferProdId=row.offerProdId">{{$t('优惠申请')}}</el-button>
<el-button v-hasPermi="['ecw:offer:commission']" v-if="row.seaFreight > 0" size="mini" type="text" @click="showCommissionProd=row">{{$t('佣金规则')}}</el-button>
</template>
</el-table-column>
......
......@@ -66,7 +66,7 @@
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="2">
<el-button type="primary" plain icon="el-icon-setting" size="mini" :disabled="multiple" @click="batchReview">{{$t('批量复核')}}</el-button>
<el-button v-hasPermi="['ecw:cargo_control:batch_review']" type="primary" plain icon="el-icon-setting" size="mini" :disabled="multiple" @click="batchReview">{{$t('批量复核')}}</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
......@@ -113,31 +113,31 @@
<template slot-scope="scope">
<!--控货中,已入仓-->
<template v-if="[0,2].indexOf(scope.row.cargoControlStatus) > -1 && scope.row.sumNum > 0">
<el-button type="text" size="mini" @click="showReleaseOrderId=scope.row.orderId">{{$t('放货')}}</el-button>
<el-button type="text" size="mini" @click="showTransferOrder = scope.row" >{{$t('控货权转移')}}</el-button>
<el-button type="text" size="mini" @click="showReleaseOrderId=scope.row.orderId" v-hasPermi="['ecw:cargo_control:release']">{{$t('放货')}}</el-button>
<el-button type="text" size="mini" @click="showTransferOrder = scope.row" v-hasPermi="['ecw:cargo_control:transfer']">{{$t('控货权转移')}}</el-button>
</template>
<!--部分控货-->
<template v-if="scope.row.cargoControlStatus == 2">
<el-button type="text" size="mini" @click="toDetail(scope.row)" >{{$t('修改')}}</el-button>
<el-button type="text" size="mini" @click="toDetail(scope.row)" >{{$t('取消')}}</el-button>
<el-button type="text" size="mini" @click="review(scope.row)" v-if="scope.row.isToReview">{{$t('放货复核')}}</el-button>
<el-button type="text" size="mini" @click="toDetail(scope.row)" v-hasPermi="['ecw:cargo_control:update']">{{$t('修改')}}</el-button>
<el-button type="text" size="mini" @click="toDetail(scope.row)" v-hasPermi="['ecw:cargo_control:cancel']">{{$t('取消')}}</el-button>
<el-button type="text" size="mini" @click="review(scope.row)" v-if="scope.row.isToReview" v-hasPermi="['ecw:cargo_control:review']">{{$t('放货复核')}}</el-button>
</template>
<!--已全部放货,但是未复核-->
<template v-if="scope.row.cargoControlStatus == 1 && scope.row.isToReview">
<el-button type="text" size="mini" @click="review(scope.row)">{{$t('放货复核')}}</el-button>
<el-button type="text" size="mini" @click="toDetail(scope.row)" >{{$t('修改')}}</el-button>
<el-button type="text" size="mini" @click="toDetail(scope.row)" >{{$t('取消')}}</el-button>
<el-button type="text" size="mini" @click="review(scope.row)" v-hasPermi="['ecw:cargo_control:review']">{{$t('放货复核')}}</el-button>
<el-button type="text" size="mini" @click="toDetail(scope.row)" v-hasPermi="['ecw:cargo_control:update']">{{$t('修改')}}</el-button>
<el-button type="text" size="mini" @click="toDetail(scope.row)" v-hasPermi="['ecw:cargo_control:cancel']">{{$t('取消')}}</el-button>
</template>
<!--已完成放货,且没有待复核;真正的放货完成-->
<template v-if="scope.row.cargoControlStatus == 1 && !scope.row.isToReview">
<!-- <el-button type="text" size="mini" @click="toDetail(scope.row)" >{{$t('查看')}}</el-button> -->
<el-button type="text" size="mini" @click="cargoTransfer(scope.row)" >{{$t('调货')}}</el-button>
<el-button type="text" size="mini" @click="showFallbackOrder=scope.row" v-if="scope.row.isReleaseAfterGoods">{{$t('反复核')}}</el-button>
<el-button type="text" size="mini" @click="cargoTransfer(scope.row)" v-hasPermi="['ecw:cargo_control:cargo_transfer']">{{$t('调货')}}</el-button>
<el-button type="text" size="mini" @click="showFallbackOrder=scope.row" v-if="scope.row.isReleaseAfterGoods" v-hasPermi="['ecw:cargo_control:fallback']">{{$t('反复核')}}</el-button>
</template>
<el-button type="text" size="mini" @click="toDetail(scope.row)" >{{$t('查看')}}</el-button>
<el-button type="text" size="mini" @click="toDetail(scope.row)" v-hasPermi="['ecw:cargo_control:show']">{{$t('查看')}}</el-button>
</template>
</el-table-column>
</el-table>
......
......@@ -211,15 +211,16 @@
<el-timeline v-if="order.orderTimeVOList && order.orderTimeVOList.length" :reverse="true">
<el-timeline-item v-for="(activity, index) in order.orderTimeVOList" :key="index" :timestamp="activity.timestamp">
{{ activity.titleZh }}
<div>{{$l(activity, 'remarks')}}</div>
</el-timeline-item>
</el-timeline>
<el-result v-else icon="info " :title="$t('暂无数据')" :subTitle="$t('暂无订单动态数据')" />
</el-tab-pane>
<el-tab-pane :label="$t('运单资料/提货单')" name="three">
<!--inWarehouseState 1待入库,2多了,3少了,4到齐-->
<el-button type="text" @click="showWarehouseReceipt=true" :disabled="order.inWarehouseState == 0 && order.shipmentState == 0">{{$t('查看入仓单')}}</el-button>
<el-button type="text" @click.native="showLadingBill=true" :disabled="!order.ladingState">{{$t('查看提货单')}}</el-button>
<el-button :disabled="!order.packingListUrl" type="text" @click="downloadPackingList">{{$t('装箱单')}}</el-button>
<el-button v-hasPermi="['ecw:order:show_receipt']" type="text" @click="showWarehouseReceipt=true" :disabled="order.inWarehouseState == 0 && order.shipmentState == 0">{{$t('查看入仓单')}}</el-button>
<el-button v-hasPermi="['ecw:order:show_landing']" type="text" @click.native="showLadingBill=true" :disabled="!order.ladingState">{{$t('查看提货单')}}</el-button>
<el-button v-hasPermi="['ecw:order:show_packing']" :disabled="!order.packingListUrl" type="text" @click="downloadPackingList">{{$t('装箱单')}}</el-button>
</el-tab-pane>
<el-tab-pane :label="$t('费用明细')" name="four">
<el-table :data="feeList">
......
......@@ -835,7 +835,7 @@ export default {
'form.isCargoControl'(isCargoControl){
console.log('form.isCargoControl', this.form.isCargoControl, this.initing)
if(!this.initing){
this.$set(this.form, 'drawee', isCargoControl ? 1 : 2)
this.$set(this.form, 'drawee', isCargoControl ? 2 : 2)
}
},
/* 'form.orderItemVOList'(){
......@@ -852,6 +852,12 @@ export default {
}
})
},
// 送货上门变化后需要判断当前选择的收货方式,如果选择了送货上门但是当前不支持送货上门则需要重置
homeDeliveryService(enable){
if(!enable && this.form.harvestMethod != 1){
this.form.harvestMethod = 1
}
}
},
activated(){
......
......@@ -95,7 +95,10 @@
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
<el-col :span="12">
<el-button type="primary" size="mini" @click="exportSearch" v-hasPermi="['ecw:exception:export']">导出</el-button>
</el-col>
<el-col :span="12"><right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar></el-col>
</el-row>
<!-- 列表 -->
......@@ -169,8 +172,23 @@
</el-table-column>
<el-table-column :label="$t('操作')" align="center">
<template slot-scope="scope">
<el-button v-if="scope.row.orderExceptionStatus<2" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row.orderId)">{{$t('处理')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-share" @click="handEdit(scope.row.orderId)">{{$t('查看')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row.orderId)">{{$t('查看')}}</el-button>
<!-- <el-button size="mini" type="text" icon="el-icon-share" @click="handEdit(scope.row.orderId)">{{$t('查看')}}</el-button> -->
<el-button v-if="scope.row.orderExceptionType=='order_superfluous_box_exception'" v-hasPermi="['ecw:exception:superfluousBox']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row.orderId)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_lack_box_exception'" v-hasPermi="['ecw:exception:lackBox']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row.orderId)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_pay_exception'" v-hasPermi="['ecw:exception:pay']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row.orderId)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_miss_exception'" v-hasPermi="['ecw:exception:miss']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row.orderId)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_superfluous_goods_exception'" v-hasPermi="['ecw:exception:superfluousGoods']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_in_water_exception'" v-hasPermi="['ecw:exception:inWater']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row.orderId)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_damage_exception'" v-hasPermi="['ecw:exception:damaged']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row.orderId)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_heavy_cargo_exception'" v-hasPermi="['ecw:exception:heavyCargo']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row.orderId)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_doc_exception'" v-hasPermi="['ecw:exception:doc']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row.orderId)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_consignor_exception'" v-hasPermi="['ecw:exception:consignor']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row.orderId)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_other_exception'" v-hasPermi="['ecw:exception:other']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row.orderId)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_cod_exception'" v-hasPermi="['ecw:exception:cod']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row.orderId)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_no_quote_exception'" v-hasPermi="['ecw:exception:noQuote']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row.orderId)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_bulky_cargo_exception'" v-hasPermi="['ecw:exception:bulkyCargo']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row.orderId)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_pick_up_exception'" v-hasPermi="['ecw:exception:pickUp']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row.orderId)">{{$t('处理')}}</el-button>
</template>
</el-table-column>
</el-table>
......@@ -181,7 +199,7 @@
</template>
<script>
import {getOrderExceptionPage} from "@/api/ecw/orderException"
import {getOrderExceptionPage, exportExcel} from "@/api/ecw/orderException"
import {getTradeCityList} from '@/api/ecw/region'
import {DICT_TYPE} from '@/utils/dict'
// import { userList } from "@/api/system/user"
......@@ -302,7 +320,22 @@ export default {
tag += this.$t('(空)')
}
return tag
},
exportSearch(){
this.exportExcel(exportExcel, this.queryParams, this.$t('异常订单'))
},
// 通用导出函数
exportExcel(func, params, fileName = null){
this.exportLoading = true;
func(params).then(res => {
if(!fileName){
fileName = this.$t('订单')
}
this.$download.excel(res, fileName + '.xls');
}).finally(() => {
this.exportLoading = false
})
},
}
}
</script>
This diff is collapsed.
......@@ -98,6 +98,11 @@
</template>
</el-table-column>
<el-table-column :label="$t('处理人')" align="center" prop="userName" />
<el-table-column :label="$t('创建时间')" align="center">
<template slot-scope="scope">
<span>{{parseTime(scope.row.createTime)}}</span>
</template>
</el-table-column>
<el-table-column :label="$t('处理时间')" align="center">
<template slot-scope="scope">
<span>{{parseTime(scope.row.handlerTime)}}</span>
......@@ -106,7 +111,21 @@
<el-table-column :label="$t('操作')" align="center">
<template slot-scope="scope">
<el-tag v-if="scope.row.orderExceptionStatus==2">{{$t('已完成')}}</el-tag>
<el-button v-else size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_superfluous_box_exception'" v-hasPermi="['ecw:exception:superfluousBox']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_lack_box_exception'" v-hasPermi="['ecw:exception:lackBox']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_pay_exception'" v-hasPermi="['ecw:exception:pay']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_miss_exception'" v-hasPermi="['ecw:exception:miss']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_superfluous_goods_exception'" v-hasPermi="['ecw:exception:superfluousGoods']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_in_water_exception'" v-hasPermi="['ecw:exception:inWater']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_damage_exception'" v-hasPermi="['ecw:exception:damaged']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_heavy_cargo_exception'" v-hasPermi="['ecw:exception:heavyCargo']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_doc_exception'" v-hasPermi="['ecw:exception:doc']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_consignor_exception'" v-hasPermi="['ecw:exception:consignor']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_other_exception'" v-hasPermi="['ecw:exception:other']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_cod_exception'" v-hasPermi="['ecw:exception:cod']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_no_quote_exception'" v-hasPermi="['ecw:exception:noQuote']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_bulky_cargo_exception'" v-hasPermi="['ecw:exception:bulkyCargo']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
<el-button v-else-if="scope.row.orderExceptionType=='order_pick_up_exception'" v-hasPermi="['ecw:exception:pickUp']" size="mini" type="text" icon="el-icon-edit" @click="handEdit(scope.row)">{{$t('处理')}}</el-button>
</template>
</el-table-column>
</el-table>
......
......@@ -69,16 +69,17 @@
</el-form-item>
</el-row>
<el-row v-if="shopData">
<el-form-item :label="$t('入仓参数')+':'" v-if="shopData.warehouseInInfoVO">
<el-form-item :label="$t('入仓参数')+':'" ><template v-if="shopData.warehouseInInfoVO">
{{$t('{num}箱 {volume}m³ {weight}kg {quantity}', {
num: shopData.warehouseInInfoVO.cartonsNum || 0,
volume: shopData.warehouseInInfoVO.volume || 0,
weight: shopData.warehouseInInfoVO.weight || 0,
quantity: shopData.warehouseInInfoVO.quantityAll || 0
})}}
})}}</template>
<!-- <span>{{(orderData.sumNum||0)+$t('')+(orderData.sumVolume||0)+''+(orderData.sumWeight||0)+'kg '+(orderData.sumQuantity||0) +$t('')}}</span> -->
</el-form-item>
<template v-else>{{$t('无入仓数据')}}</template>
</el-form-item>
</el-row>
</template>
......@@ -100,8 +101,19 @@
<span>{{orderData.sumNum||0}}{{$t('')}} {{orderData.wvolume||0}}m³ {{orderData.vweight||0}}Kg {{orderData.sumQuantity||0}}{{$t('')}}</span>
</el-form-item>
</el-row>
<el-row>
<el-form-item :label="$t('创建时间')+':'">
<span>{{parseTime(orderExceptionData.createTime)}}</span>
</el-form-item>
</el-row>
<el-row>
<el-form-item :label="$t('处理时间')+':'">
<span>{{parseTime(orderExceptionData.handlerTime)||'/'}}</span>
</el-form-item>
</el-row>
</div>
</el-form>
<!-- 预付异常的表格 -->
<el-table v-if="orderExceptionData.orderExceptionType=='order_pay_exception'" v-loading="loading" border :data="preException">
<el-table-column :label="$t('品名')" align="center">
......@@ -380,6 +392,7 @@
import {getExceptionById,handlerExceptionByExceptionId,getOrderItemById,getOrderFeeById} from "@/api/ecw/orderException"
import {getFirstReceivableListByOrderId} from '@/api/ecw/financial'
import WorkFlow from '@/components/WorkFlow'
import {listByIds} from '@/api/ecw/region'
import {cancelProcessInstance} from '@/api/bpm/processInstance'
export default {
name: "PrepayDeal",
......@@ -415,6 +428,7 @@
timers:"", //时间戳
FilePreAll:[], // 预览数组
TragetPic:{},
region:''
};
},
created() {
......@@ -436,6 +450,17 @@
if(val == 'cod' && this.orderExceptionData.orderExceptionAmountCurrencyId){
this.$set(this.handlerParams, 'currency', this.orderExceptionData.orderExceptionAmountCurrencyId)
}
},
'orderData.consigneeVO'(val){
if(!val) return '-'
listByIds({ids: [val.country, val.province, val.city].join(',')}).then(res => {
console.log('listById', res)
let region = ''
res.data.forEach(item => {
region += " " + item.titleZh
})
this.region = region
})
}
},
computed: {
......@@ -605,6 +630,13 @@
</script>
<style scoped>
.link-text{
margin-top:20px;
}
.link-text span{
font-size:16px;
font-weight:600;
}
.card-title{
font-size: 18px;
font-weight: bold;
......
......@@ -92,8 +92,8 @@
prop="address"
:label="$t('操作')">
<template v-slot="{row}">
<el-button v-if="row.originalSeaFreight" size="mini" type="text" v-hasPermi="['ecw:order:update']" @click="showDiscountItem=row">{{$t('优惠申请')}}</el-button>
<el-button v-if="row.originalSeaFreight" size="mini" type="text" v-hasPermi="['ecw:order:update']" @click="showCommissionItem=row">{{$t('佣金规则')}}</el-button>
<el-button v-if="row.originalSeaFreight" size="mini" type="text" v-hasPermi="['ecw:order:reduce']" @click="showDiscountItem=row">{{$t('优惠申请')}}</el-button>
<el-button v-if="row.originalSeaFreight" size="mini" type="text" v-hasPermi="['ecw:order:commission']" @click="showCommissionItem=row">{{$t('佣金规则')}}</el-button>
<el-button v-if="row.originalSeaFreight" size="mini" type="text" v-hasPermi="['ecw:order:discount']" @click="showAllowanceItem=row">{{$t('管理折扣')}}</el-button>
</template>
</el-table-column>
......@@ -105,8 +105,8 @@
1.海运整柜、海运拼柜显示重货优惠 1,2
2.空运专线、海空联运显示泡货优惠 3,4
-->
<el-button type="primary" @click="showPreferentialType=4" v-if="order.transportId === 1 || order.transportId === 2">{{$t('申请重货优惠')}}</el-button>
<el-button type="primary" @click="showPreferentialType=5" v-else>{{$t('申请泡货优惠')}}</el-button>
<el-button v-hasPermi="['ecw:order:heavy']" type="primary" @click="showPreferentialType=4" v-if="order.transportId === 1 || order.transportId === 2">{{$t('申请重货优惠')}}</el-button>
<el-button v-hasPermi="['ecw:order:bulky']" type="primary" @click="showPreferentialType=5" v-else>{{$t('申请泡货优惠')}}</el-button>
<el-button type="primary" @click="$tab.closePage()">{{$t('关闭窗口')}}</el-button>
</div>
</el-card>
......
......@@ -397,6 +397,10 @@ export default {
type: Boolean,
default: false
},
isJiyun: {
type: Boolean,
default: false
},
// 入仓修改
edit: {
type: Boolean,
......@@ -493,6 +497,7 @@ export default {
if (!!this.warehousing.brandName){
this.getProductBrandPage(this.warehousing.brandName)
}
this.getProductBrandPage()
}
} else {
}
......@@ -699,9 +704,9 @@ export default {
}
const form = val === 1 ? this.form1 : this.form
form.orderWarehouseInItemDoList.push({
"boxGauge1": 0,
"boxGauge2": 0,
"boxGauge3": 0,
"boxGauge1": this.isJiyun ? 0 : '',
"boxGauge2": this.isJiyun ? 0 : '',
"boxGauge3": this.isJiyun ? 0 : '',
"cartonsNum": cartonsNum > 0 ? cartonsNum : '',
"expressNo": "",
"quantityAll": undefined,
......@@ -737,7 +742,7 @@ export default {
const [boxGauge1, boxGauge2, boxGauge3] = boxGaugeList
return {...e, boxGauge1, boxGauge2, boxGauge3}
}
return {...e, boxGauge1: 0, boxGauge2: 0, boxGauge3: 0}
return {...e, boxGauge1: this.isJiyun ? 0 : '', boxGauge2: this.isJiyun ? 0 : '', boxGauge3: this.isJiyun ? 0 : ''}
})
},
tableData1() {
......
......@@ -153,7 +153,7 @@
<warehouse-area-dialog ref="area" :visible.sync="areaVisible" v-model="form.orderLocationCreateReqVOList"
:order-id="orderId" :warehouse-id="warehouseId" :is-editing="isEdit"></warehouse-area-dialog>
<edit-dialog :title="title" :order-id="order.orderId" :visible.sync="warehousingVisible" :warehousing="warehousing" :edit="isEdit"></edit-dialog>
<edit-dialog :title="title" :order-id="order.orderId" :visible.sync="warehousingVisible" :warehousing="warehousing" :edit="isEdit" :is-jiyun="order.type.indexOf('1') !== -1"></edit-dialog>
<!-- 完成入仓 -->
<el-dialog
......
......@@ -17,7 +17,7 @@
<el-form-item :label="$t('商品类型')" prop="attrId">
<el-select v-model="queryParams.typeId" :placeholder="$t('选择商品类型')" clearable>
<el-option v-for="type in typeList" :key="type.id" :label="$l(type, 'title')" :value="type.id" />
<el-option v-for="types in typeList" :key="types.id" :label="$l(types, 'title')" :value="types.id" />
</el-select>
</el-form-item>
......@@ -55,7 +55,7 @@
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading" >{{$t('导出')}}</el-button>
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" v-hasPermi="['ecw:product-price:export']" :loading="exportLoading" >{{$t('导出')}}</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
......@@ -134,7 +134,7 @@
<el-form ref="form" :model="form" :rules="rules" label-width="110px">
<el-form-item :label="$t('商品类型')" prop="typeId">
<el-select v-model="form.typeId" :placeholder="$t('选择商品类型')" clearable>
<el-option v-for="type in typeList" :key="type.id" :label="type.titleZh" :value="type.id" />
<el-option v-for="types in typeList" :key="types.id" :label="types.titleZh" :value="types.id" />
</el-select>
</el-form-item>
......@@ -206,7 +206,11 @@
<el-radio v-model.number="form.needBook" :label="1">{{$t('是')}}</el-radio>
<el-radio v-model.number="form.needBook" :label="0">{{$t('否')}}</el-radio>
</el-form-item>
<!-- <el-form-item :label="$t('可参与优惠活动')" prop="you">
<el-select v-model="form.you" :placeholder="$t('可参与优惠活动')" clearable>
<el-option v-for="packageItem in packagingList" :key="packageItem.value" :label="packageItem.label" :value="packageItem.value" />
</el-select>
</el-form-item> -->
<el-form-item :label="$t('每日入仓上限')" prop="dayLimit" v-if="form.needBook==1">
<el-input v-model.number="form.dayLimit" type="number">
<template slot="append">{{$t('立方米')}}</template>
......
......@@ -163,9 +163,9 @@
v-hasPermi="['ecw:product-price:update']">{{$t('修改')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="updateStatus(scope.row, 'blacklist')"
v-hasPermi="['ecw:product-price:update']">{{ scope.row.blacklist == 0 ? $t('加入黑名单') : $t('移除黑名单') }}</el-button>
v-hasPermi="['ecw:product-price:black']">{{ scope.row.blacklist == 0 ? $t('加入黑名单') : $t('移除黑名单') }}</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="updateStatus(scope.row, 'auditStatus')"
v-hasPermi="['ecw:product-price:update']">{{scope.row.auditStatus == AuditStatusEnum.PASS ? $t('下架') : $t('上架')}}</el-button>
v-hasPermi="['ecw:product-price:down']">{{scope.row.auditStatus == AuditStatusEnum.PASS ? $t('下架') : $t('上架')}}</el-button>
<!-- <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['ecw:product-price:delete']">{{$t('删除')}}</el-button> -->
</template>
......
......@@ -73,15 +73,14 @@
</el-col>
<el-col :span="1.5">
<!--未指定商品-->
<el-button v-if="!$route.query.product_id" type="primary" plain icon="el-icon-setting" size="mini" @click="handleBatchEdit">{{$t('批量设置价格')}}</el-button>
<el-button v-if="!$route.query.product_id" type="primary" plain icon="el-icon-setting" size="mini" @click="batchBlock" :disabled="multiple">{{$t('批量加入黑名单')}}</el-button>
<el-button v-if="!$route.query.product_id" type="primary" plain icon="el-icon-setting" size="mini" @click="batchOff" :disabled="multiple">{{$t('批量下架')}}</el-button>
<el-button v-if="!$route.query.product_id" type="primary" v-hasPermi="['ecw:product-price:batch_update']" size="mini" @click="handleBatchEdit">{{$t('批量设置价格')}}</el-button>
<el-button v-if="!$route.query.product_id" type="primary" v-hasPermi="['ecw:product-price:bartch_black']" size="mini" @click="batchBlock" :disabled="multiple">{{$t('批量加入黑名单')}}</el-button>
<el-button v-if="!$route.query.product_id" type="primary" v-hasPermi="['ecw:product-price:batch_down']" size="mini" @click="batchOff" :disabled="multiple">{{$t('批量下架')}}</el-button>
<el-button v-if="!$route.query.product_id" type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading" >{{$t('导出')}}</el-button>
</el-col>
<el-button v-if="!$route.query.product_id" type="warning" v-hasPermi="['ecw:product-price:export']" @click="handleExport" :loading="exportLoading" >{{$t('导出')}}</el-button>
<!--指定商品-->
<el-button v-if="$route.query.product_id" type="primary" plain icon="el-icon-setting" size="mini" @click="batchSetSingleProductPrice">{{$t('批量设置单个商品的路线')}}</el-button>
<el-button v-if="$route.query.product_id" type="primary" v-hasPermi="['ecw:product-price:single_product']" @click="batchSetSingleProductPrice">{{$t('批量设置单个商品的路线')}}</el-button>
</el-col>
<!-- <el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
......@@ -215,14 +214,14 @@
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width" width="140">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row, true)"
v-hasPermi="['ecw:product-price:update']">{{$t('查看')}}</el-button>
v-hasPermi="['ecw:product-price:show']">{{$t('查看')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['ecw:product-price:update']">{{$t('编辑')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="updateStatus(scope.row, 'blacklist')"
>{{ scope.row.blacklist == 0 ? $t('加入黑名单') : $t('移除黑名单') }}</el-button>
v-hasPermi="['ecw:product-price:black']">{{ scope.row.blacklist == 0 ? $t('加入黑名单') : $t('移除黑名单') }}</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="updateStatus(scope.row, 'auditStatus')"
>{{scope.row.auditStatus == AuditStatusEnum.PASS ? $t('下架') : $t('上架')}}</el-button>
v-hasPermi="['ecw:product-price:down']">{{scope.row.auditStatus == AuditStatusEnum.PASS ? $t('下架') : $t('上架')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['ecw:product-price:delete']">{{$t('删除')}}</el-button>
</template>
......
......@@ -35,16 +35,16 @@
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['ecw:internal-message:create']">{{ $t('新增') }}</el-button>
</el-col>
<el-col :span="1.5">
<!-- <el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['ecw:internal-message:export']">{{ $t('导出') }}</el-button>
</el-col>
</el-col>-->
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="" align="center" prop="id" />
<el-table-column :label="$t('编号')" align="center" prop="id" />
<el-table-column :label="$t('来源')" align="center" prop="fromId" />
<el-table-column :label="$t('发送时间')" align="center" prop="sendTime" width="180">
<template slot-scope="scope">
......
......@@ -82,7 +82,7 @@
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="12" v-if="form.type == 2">
<el-col :span="12" v-if="form.type == 2 || form.type == 1">
<el-form-item :label="$t('显示菜单')" prop="isShowInMenuBar">
<dict-selector v-model="form.isShowInMenuBar" :type="DICT_TYPE.INFRA_BOOLEAN_STRING" formatter="bool" form-type="radio" />
</el-form-item>
......
......@@ -38,7 +38,7 @@
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="" align="center" prop="id" />
<el-table-column :label="$t('编号')" align="center" prop="id" />
<!-- <el-table-column :label="$t('来源')" align="center" prop="fromId" />-->
<el-table-column :label="$t('发送时间')" align="center" prop="sendTime" width="180">
<template slot-scope="scope">
......@@ -209,7 +209,7 @@ export default {
})
},
deleteFn(row){
this.$confirm(`是否要删除id:[${row.id}]的站内信?`, this.$t('提示'), {
this.$confirm(`是否要删除编号为“${row.id}的站内信?`, this.$t('提示'), {
confirmButtonText: this.$t('确定'),
cancelButtonText: this.$t('取消'),
type: 'warning'
......
......@@ -476,9 +476,13 @@ export default {
roleId: this.form.id,
menuIds: [...this.$refs.menu.getCheckedKeys()] // , ...this.$refs.menu.getHalfCheckedKeys() 不需要半选中的,会在下次回显的时候导致子节点全部被选中
}).then(response => {
this.$modal.msgSuccess("修改成功");
this.openMenu = false;
this.getList();
this.$store.dispatch('GetInfo').then(
()=>{
this.$modal.msgSuccess("修改成功");
}
)
});
}
},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment