Commit bc3f84b4 authored by dcy's avatar dcy

Merge remote-tracking branch 'origin/dev' into dev

parents ea6908e1 f64fdb85
......@@ -364,6 +364,36 @@ export function abnormalCreate(data) {
});
}
/**
* 单个费用重置
*
* @export
* @param {*} data
* @return {*}
*/
export function resetById(params) {
return request({
url: "/ecw/box-customs-extra-cost/resetById",
method: "get",
params,
});
}
/**
* 出货单费用重置
*
* @export
* @param {*} data
* @return {*}
*/
export function resetByShipmentId(params) {
return request({
url: "ecw/box-customs-extra-cost/resetByShipmentId",
method: "get",
params,
});
}
/***************************** 预装 start **********************************/
/**
......
......@@ -102,14 +102,14 @@
</el-form>
</el-row>
<el-row>
<el-table :data="costOrderList">
<el-table :data="costOrderList" border class="table-inputNumber">
<el-table-column :label="$t('订单号')" align="center" prop="orderNo" />
<el-table-column :label="$t('报关费用')" align="center" prop="fee">
<el-table-column :label="$t('报关费用')" align="center" prop="fee" width="220">
<template slot-scope="scope">
<el-input-number v-model="scope.row.fee" controls-position="right" :min="1"></el-input-number>
</template>
</el-table-column>
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width">
<el-table-column :label="$t('操作')" align="center">
<template slot-scope="scope">
<el-button type="primary" size="small" @click="createExtraCost(scope.row)">{{$t('确定')}}</el-button>
</template>
......@@ -123,15 +123,15 @@
</div>
</el-row>
<el-row>
<el-table :data="costList">
<el-table-column type="selection" width="55" />
<el-table :data="costList" border height="300px" class="table-inputNumber">
<el-table-column type="selection" width="55" align="center" />
<el-table-column :label="$t('订单号')" align="center" prop="orderNo" />
<el-table-column :label="$t('报关费用')" align="center" prop="fee" width="220px">
<el-table-column :label="$t('报关费用')" align="center" prop="fee" width="220">
<template slot-scope="scope">
<el-input-number v-model="scope.row.fee" controls-position="right" :min="1"></el-input-number>
</template>
</el-table-column>
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width">
<el-table-column :label="$t('操作')" align="center">
<template slot-scope="scope">
<el-button type="primary" size="small" @click="updateExtraCost(scope.row)">{{$t('修改')}}</el-button>
<el-button size="small" @click="restCostList(scope.row)">{{$t('重置')}}</el-button>
......@@ -153,6 +153,8 @@ import {
extraCostCreate,
extraCostUpdate,
approvalCancel,
resetById,
resetByShipmentId,
} from "@/api/ecw/boxSea";
import {
formatNumberString,
......@@ -180,9 +182,15 @@ export default {
cusDeclarationObj: {},
// 校验
rules: {
dcBoxWgt: [{ required: true, message: this.$t("必填"), trigger: "change" }],
dcGoodsWgt: [{ required: true, message: this.$t("必填"), trigger: "change" }],
dcCustomsType: [{ required: true, message: this.$t("必填"), trigger: "change" }],
dcBoxWgt: [
{ required: true, message: this.$t("必填"), trigger: "change" },
],
dcGoodsWgt: [
{ required: true, message: this.$t("必填"), trigger: "change" },
],
dcCustomsType: [
{ required: true, message: this.$t("必填"), trigger: "change" },
],
dcCustomsStatus: [
{ required: true, message: this.$t("必填"), trigger: "change" },
],
......@@ -330,24 +338,23 @@ export default {
shipmentId: this.shipmentObj.id,
orderNo: this.orderNo,
}).then((res) => {
this.costOrderList = [
{
orderNo: this.orderNo,
orderId: res.data,
},
];
this.searchCostList(res.data);
serviceMsg(res, this).then(() => {
this.costOrderList = [
{
orderNo: this.orderNo,
orderId: res.data,
},
];
this.searchCostList();
});
});
},
/* 查询额外费用订单 */
searchCostList(orderId) {
searchCostList() {
extraCostList({
shipmentId: this.shipmentObj.id,
orderId: orderId,
}).then((res) => {
this.costList = res.data.map((item) => {
return { originalFee: item.fee, ...item };
});
this.costList = res.data;
});
},
/* 创建额外费用 */
......@@ -363,7 +370,7 @@ export default {
shipmentId: this.shipmentObj.id,
}).then((res) => {
serviceMsg(res, this).then(() => {
this.searchCostList(row.orderId);
this.searchCostList();
});
});
},
......@@ -375,27 +382,25 @@ export default {
}
extraCostUpdate(row).then((res) => {
serviceMsg(res, this).then(() => {
this.searchCostList(row.orderId);
this.searchCostList();
});
});
},
/* 重置 */
restCostList(row) {
this.costList = this.costList.map((item) => {
if (row && row.id === item.id) {
return {
...item,
fee: item.originalFee,
};
}
if (!row) {
return {
...item,
fee: item.originalFee,
};
}
return item;
});
if (row) {
resetById({ id: row.id }).then((res) => {
serviceMsg(res, this).then(() => {
this.searchCostList();
});
});
} else {
resetByShipmentId({ id: this.shipmentObj.id }).then((res) => {
serviceMsg(res, this).then(() => {
this.searchCostList();
});
});
}
},
/** 取消 */
cancel(type) {
......@@ -416,9 +421,10 @@ export default {
this.$set(
this.dialogConfig,
"title",
`${this.shipmentObj.selfNo} ` + this.$t('报关费用')
`${this.shipmentObj.selfNo} ` + this.$t("报关费用")
);
this.$set(this.dialogConfig, "dialogVisible", true);
this.searchCostList();
},
// 计算VGM重量
calcVGM(dcBoxWgt, dcGoodsWgt) {
......@@ -477,7 +483,9 @@ export default {
},
/* 下载报关单 */
downloadCusFile() {
downloadFileByUrl('downloadCustomFiles', { shipmentId: this.shipmentObj.id });
downloadFileByUrl("downloadCustomFiles", {
shipmentId: this.shipmentObj.id,
});
},
},
watch: {
......@@ -523,7 +531,9 @@ export default {
} = this.shipmentObj;
const { dcCheckStatus } = customsInfo;
if (checkExamineStatus === 1) {
return dcCheckStatus === 1 ? this.$t("退场审核中") : this.$t("部分退场审核中");
return dcCheckStatus === 1
? this.$t("退场审核中")
: this.$t("部分退场审核中");
}
if (checkExamineStatus === 2 && checkDealStatus === 0) {
return dcCheckStatus === 1
......@@ -605,5 +615,10 @@ export default {
text-align: right;
}
}
.el-table.table-inputNumber {
.cell {
overflow: visible;
}
}
}
</style>
......@@ -581,6 +581,20 @@ export default {
createGoods(params).then((res) => {
serviceMsg(res, this).then(() => {
this.queryAllData();
}).catch(() => {
if(res.code === 555) {
this.$confirm(res.msg, this.$t("提示"), {
type: "warning",
})
.then((_) => {
createGoods({...params, relationStatus: 1}).then((res) => {
serviceMsg(res, this).then(() => {
this.queryAllData();
})
})
})
.catch((_) => {});
}
});
});
} else {
......
......@@ -46,7 +46,6 @@ import { listUser } from "@/api/system/user";
// 这里引入的数据切换语言后要刷新才生效,优化办法是label同时配备labelEn字段,然后再页面上用$l函数调用
import { getSeaStatus, getStatusName, seaBaseData } from "./utils";
console.log(seaBaseData())
/**
* 海运操作主页面
*/
......
......@@ -3,7 +3,7 @@
<el-form ref="form" :model="form" :rules="rules" label-width="120px" inline :validate-on-rule-change="false">
<el-card>
<div slot="header" class="card-title">{{$t('新建报价单')}}</div>
<div slot="header" class="card-title">{{$route.path.indexOf('create') > -1 ? $t('新建报价单') : $t('编辑报价单')}}</div>
<el-form-item :label="$t('所属人')" prop="relation">
<el-radio-group v-model="form.relation">
<el-radio :label="1">{{$t('发件人')}}</el-radio>
......@@ -203,7 +203,7 @@
</el-table-column>
<el-table-column :label="$t('数量') + '(个)'">
<template slot-scope="{row}">
<el-input v-model.number="row.quantity" @input="calculationPrice" :disabled="!canAddProduct" />
<el-input v-model="row.quantity" @input="calculationPrice" :disabled="!canAddProduct" />
</template>
</el-table-column>
<el-table-column :label="$t('总体积') + '(m³)'" width="100px">
......@@ -871,6 +871,7 @@ export default {
"lineId": item.lineId,
"prodId": item.prodId,
"num": item.num,
"quantity": item.quantity,
"boxGauge": item.boxGauge,
"volume": item.volume,
"transportId": item.transportId,
......@@ -891,11 +892,12 @@ export default {
})
},
onContactChoose(contact){
console.log('选择联系人', contact)
if(!contact) return
if(!this.contactChooseType && !this.quickCreateType) return
if(!this.contactChooseType && this.quickCreateType){
this.contactChooseType = this.quickCreateType == 0 ? 'consignor' : 'consignee'
}
this.$set(this.form, this.contactChooseType + 'Company', contact.company)
this.$set(this.form, this.contactChooseType + 'Id', contact.customerContactsId)
this.$set(this.form, this.contactChooseType + 'CountryCode', contact.areaCode)
......
......@@ -50,7 +50,12 @@
<el-form-item :label="$t('唛头')" prop="marks">
<el-input v-model="queryParams.marks" placeholder="唛头" clearable @keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item :label="$t('外部仓')" prop="number">
<el-select v-model="queryParams.isExternalWarehouse" :placeholder="$t('请选择')" clearable @change="handleQuery">
<el-option :label="$t('外部仓')" :value="1"></el-option>
<el-option :label="$t('自有仓')" :value="0"></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"
......
......@@ -95,7 +95,7 @@
{{order.isExternalWarehouse ? $t('外部仓') : $t('自有仓') }}
<template v-for="(item, index) in order.externalWarehouseDtoList" >
<div v-if="item.estLoadingTime || item.loadingAddress" :key="index">
<!-- {{$t('装柜时间')}}{{item.estLoadingTime}} -->
{{$t('装柜时间')}}{{item.estLoadingTime}}
{{$t('装柜地址')}}{{item.loadingAddress}}
</div>
</template>
......
......@@ -305,7 +305,7 @@
</el-form-item>
<div v-if="form.isExternalWarehouse" class="pl-50">
<div v-for="(item, index) in form.externalWarehouseDtoList" class="flex" :key="index">
<!-- <div class="w-300">
<div class="w-300">
<el-form-item :label="$t('装货时间')"
:prop="'externalWarehouseDtoList.' + index + '.estLoadingTime'"
:rules="{
......@@ -314,7 +314,7 @@
>
<el-date-picker v-model="item.estLoadingTime" value-format="yyyy-MM-dd HH:mm:ss" class="w-200"></el-date-picker>
</el-form-item>
</div> -->
</div>
<div class="w-300">
<el-form-item :label="$t('装货地址')"
:prop="'externalWarehouseDtoList.' + index + '.loadingAddress'"
......@@ -330,7 +330,7 @@
</div>
</div>
</div>
<div>
<div v-if="!form.isExternalWarehouse">
<el-form-item :label="$t('预计送货日期')" prop="deliveryDate">
<el-date-picker v-model="form.deliveryDate" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
</el-form-item>
......@@ -806,21 +806,26 @@ export default {
this.form.type = this.form.type ? this.form.type.split(',').filter(item => item != '') : []
this.form.packageTypeArr = this.form.packageType ? this.form.packageType.split(',').filter(item => item != '') : []
this.$set(this.form, 'consignorCompany', res.data.consignorVO.company)
this.$set(this.form, 'consignorContactsId', res.data.consignorVO.customerContactsId)
this.$set(this.form, 'consignorCountryCode', res.data.consignorVO.countryCode.replace('+', ''))
this.$set(this.form, 'consignorEmail', res.data.consignorVO.email)
this.$set(this.form, 'consignorId', res.data.consignorVO.customerId)
this.$set(this.form, 'consignorName', res.data.consignorVO.name)
this.$set(this.form, 'consignorPhone', res.data.consignorVO.phone)
if(res.data.consignorVO){
this.$set(this.form, 'consignorCompany', res.data.consignorVO.company)
this.$set(this.form, 'consignorContactsId', res.data.consignorVO.customerContactsId)
this.$set(this.form, 'consignorCountryCode', res.data.consignorVO.countryCode.replace('+', ''))
this.$set(this.form, 'consignorEmail', res.data.consignorVO.email)
this.$set(this.form, 'consignorId', res.data.consignorVO.customerId)
this.$set(this.form, 'consignorName', res.data.consignorVO.name)
this.$set(this.form, 'consignorPhone', res.data.consignorVO.phone)
}
this.$set(this.form, 'consigneeCompany', res.data.consigneeVO.company)
this.$set(this.form, 'consigneeContactsId', res.data.consigneeVO.customerContactsId)
this.$set(this.form, 'consigneeCountryCode', res.data.consigneeVO.countryCode.replace('+', ''))
this.$set(this.form, 'consigneeEmail', res.data.consigneeVO.email)
this.$set(this.form, 'consigneeId', res.data.consigneeVO.customerId)
this.$set(this.form, 'consigneeName', res.data.consigneeVO.name)
this.$set(this.form, 'consigneePhone', res.data.consigneeVO.phone)
if(res.data.consigneeVO){
this.$set(this.form, 'consigneeCompany', res.data.consigneeVO.company)
this.$set(this.form, 'consigneeContactsId', res.data.consigneeVO.customerContactsId)
this.$set(this.form, 'consigneeCountryCode', res.data.consigneeVO.countryCode.replace('+', ''))
this.$set(this.form, 'consigneeEmail', res.data.consigneeVO.email)
this.$set(this.form, 'consigneeId', res.data.consigneeVO.customerId)
this.$set(this.form, 'consigneeName', res.data.consigneeVO.name)
this.$set(this.form, 'consigneePhone', res.data.consigneeVO.phone)
}
if(res.data.ccIds){
this.ccIdArr = res.data.ccIds.split(",").filter(item => item && item != '')
}
......
......@@ -60,6 +60,12 @@
<el-option v-for="item in creatorData" :key="item.id" :label="item.nickname" :value="item.id"/>
</el-select>
</el-form-item>
<el-form-item :label="$t('外部仓')" prop="number">
<el-select v-model="queryParams.isExternalWarehouse" :placeholder="$t('请选择')" clearable @change="handleQuery">
<el-option :label="$t('外部仓')" :value="1"></el-option>
<el-option :label="$t('自有仓')" :value="0"></el-option>
</el-select>
</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="reset">重置</el-button> -->
......
......@@ -91,6 +91,12 @@
<el-form-item :label="$t('快递单号')" prop="number">
<el-input v-model="queryParams.number" :placeholder="$t('快递单号')" clearable @keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item :label="$t('外部仓')" prop="number">
<el-select v-model="queryParams.isExternalWarehouse" :placeholder="$t('请选择')" clearable @change="handleQuery">
<el-option :label="$t('外部仓')" :value="1"></el-option>
<el-option :label="$t('自有仓')" :value="0"></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
......
......@@ -40,7 +40,7 @@
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.page" :limit.sync="queryParams.rows"
@pagination="getList"/>
<!-- 对话框(添加 / 修改) -->
......@@ -106,8 +106,8 @@ export default {
dateRangeCreateTime: [],
// 查询参数
queryParams: {
pageNo: 1,
pageSize: 10,
page: 1,
rows: 10,
warehouseId: null,
name: null,
code: null,
......@@ -185,7 +185,7 @@ export default {
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.queryParams.page = 1;
this.getList();
},
/** 重置按钮操作 */
......@@ -270,8 +270,8 @@ export default {
handleExport() {
// 处理查询参数
let params = {...this.queryParams};
params.pageNo = undefined;
params.pageSize = undefined;
params.page = undefined;
params.rows = undefined;
this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime');
// 执行导出
this.$modal.confirm(this.$t('是否确认导出所有库区库域数据项?')).then(() => {
......
......@@ -58,7 +58,7 @@
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.page" :limit.sync="queryParams.rows"
@pagination="getList"/>
<!-- 对话框(添加 / 修改) -->
......@@ -152,8 +152,8 @@ export default {
dateRangeCreateTime: [],
// 查询参数
queryParams: {
pageNo: 1,
pageSize: 10,
page: 1,
rows: 10,
domainId: null,
domainName: null,
areaId: null,
......@@ -315,7 +315,7 @@ computed: {
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.queryParams.page = 1;
this.getList();
},
/** 重置按钮操作 */
......@@ -384,8 +384,8 @@ computed: {
handleExport() {
// 处理查询参数
let params = {...this.queryParams};
params.pageNo = undefined;
params.pageSize = undefined;
params.page = undefined;
params.rows = undefined;
this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime');
// 执行导出
this.$modal.confirm(this.$t('是否确认导出所有储位数据项?')).then(() => {
......
......@@ -388,7 +388,7 @@ export default {
if(!this.form.postIds) return false
let has = false
this.postOptions.forEach(item => {
if(this.form.postIds.indexOf(item.id) > -1 && item.code == 'customer service'){
if(this.form.postIds.indexOf(item.id) > -1 && item.code == 'documentary customer service'){
has = true
}
})
......
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