Commit d29947a1 authored by dcy's avatar dcy

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

parents 6c674530 1753a477
......@@ -411,6 +411,21 @@ export function createSection(data) {
});
}
/**
* 创建预装部分
*
* @export
* @param {*} data
* @return {*}
*/
export function changeSection(data) {
return request({
url: "/ecw/box-preload-goods/changeSection",
method: "post",
data,
});
}
/**
* 查询出货单下的所有部分列表
*
......
......@@ -7,7 +7,7 @@
<el-descriptions-item label="运输方式">
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="order.logisticsInfoDto.transportId"></dict-tag>
</el-descriptions-item>
<el-descriptions-item label="始发地">{{ order.logisticsInfoDto.startAddressZh || '' }}</el-descriptions-item>
<el-descriptions-item label="始发地">{{ order.logisticsInfoDto.startTitleZh || '' }}<span v-if="order.isExternalWarehouse" style="color: red">(外部仓)</span></el-descriptions-item>
<el-descriptions-item label="目的地">{{ order.logisticsInfoDto.destTitleZh || '' }}</el-descriptions-item>
<el-descriptions-item label="发货人姓名">{{ order.consignorVO && order.consignorVO.name || ''}}</el-descriptions-item>
<el-descriptions-item label="发货人公司">{{ order.consignorVO && order.consignorVO.company || '' }}</el-descriptions-item>
......
......@@ -91,7 +91,7 @@ export default {
if (val) {
this.opened = true
getByWarehouseId({cityId: this.cityId,warehouseId: this.warehouseId }).then(r => {
if (this.area.length === 0) getByWarehouseId({cityId: this.cityId,warehouseId: this.warehouseId }).then(r => {
const area = r.data
area.forEach(e => {
// 仓库
......
......@@ -171,7 +171,7 @@
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_NOTICE_TYPE" :value="String(scope.row.noticeType)" />
</template>
</el-table-column>
<el-table-column label="操作时间" align="center">
<el-table-column label="预计时间" align="center">
<template slot-scope="scope">
{{formatDate(scope.row.createTime)}}
</template>
......
......@@ -169,7 +169,7 @@ export default {
orderId: this.currRow.orderId,
copyUserId: this.selectedUsers,
};
if (['makeBill','resetBill'].includes(this.dialogCfg.type)) {
if (["makeBill", "resetBill"].includes(this.dialogCfg.type)) {
createBillService({ ...params, status: 1 }).then((res) => {
serviceMsg(res, this).then((res) => {
this.close("query");
......
......@@ -164,7 +164,7 @@ export default {
calcSum(goodsList) {
let sum = 0;
goodsList.forEach((element) => {
sum = Decimal.add(sum, element.num);
sum = Decimal.add(sum, element.num).toNumber();
});
return sum;
},
......
......@@ -312,7 +312,7 @@ export default {
let _total = 0;
const { orderSplitItemBackVOList = [] } = this.splitData;
orderSplitItemBackVOList.forEach((v) => {
_total = Decimal.add(_total, Number(v.num));
_total = Decimal.add(_total, Number(v.num)).toNumber();
});
return _total;
},
......@@ -382,15 +382,15 @@ export default {
let leviteV = 0;
let leviteW = 0;
this.orderData.orderItemVOList.forEach((column, index) => {
orderSum = Decimal.add(orderSum, column.num ?? 0);
orderV = Decimal.add(orderV, column.volume ?? 0);
orderW = Decimal.add(orderW, column.weight ?? 0);
orderSum = Decimal.add(orderSum, column.num ?? 0).toNumber();
orderV = Decimal.add(orderV, column.volume ?? 0).toFixed(2);
orderW = Decimal.add(orderW, column.weight ?? 0).toFixed(2);
leviteSum = Decimal.add(
leviteSum,
column.warehouseInInfoVO?.cartonsNum ?? 0
);
leviteV += Decimal.add(leviteV, column.warehouseInInfoVO?.volume ?? 0);
leviteW += Decimal.add(leviteW, column.warehouseInInfoVO?.weight ?? 0);
).toNumber();
leviteV += Decimal.add(leviteV, column.warehouseInInfoVO?.volume ?? 0).toFixed(2);
leviteW += Decimal.add(leviteW, column.warehouseInInfoVO?.weight ?? 0).toFixed(2);
});
sums[1] =
"下单统计:" +
......@@ -460,8 +460,8 @@ export default {
if (valid) {
// 输入箱数大于实装箱数
const total = this.totalSplitNum();
const canSplitNum = Decimal.sub(this.currRow.num, this.currRow.installNum);
const remain = Decimal.sub(canSplitNum, total);
const canSplitNum = Decimal.sub(this.currRow.num, this.currRow.installNum).toNumber();
const remain = Decimal.sub(canSplitNum, total).toNumber();
if (this.shopForm.num > remain) {
this.$message.error("放入箱数不能大于总箱数");
return;
......
......@@ -642,7 +642,7 @@ export default {
this.listData.forEach((item) => {
const { sectionOrderList = [] } = item;
sectionOrderList.forEach((item) => {
count = Decimal.add(count, item.installNum);
count = Decimal.add(count, item.installNum).toNumber();
});
});
}
......
......@@ -3,6 +3,9 @@
<el-form ref="cusDeclarationForm" :rules="rules" :model="cusDeclarationObj" label-width="120px">
<el-form-item label="单证要求">
<template v-for="(item, index) in cusDeclarationObj.documentInfo">
{{
(index === 0 || index === cusDeclarationObj.documentInfo.length) ? "" :"/"
}}
<dict-tag :type="DICT_TYPE.ECW_CUSTOMS_TYPE" :value="item" :key="index" />
</template>
<el-button type="primary" style="margin-left:10px;" @click="downloadVGM">{{getButtonLabel(cusDeclarationObj.documentInfo)}}</el-button>
......@@ -30,7 +33,7 @@
<el-date-picker type="datetime" placeholder="请选择日期" v-model="cusDeclarationObj.dcCutOffTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
</el-form-item>
<el-form-item label="状态" prop="dcCustomsStatus">
<el-radio-group v-model="cusDeclarationObj.dcCustomsStatus" :disabled="inReview || isCheckDeal">
<el-radio-group v-model="cusDeclarationObj.dcCustomsStatus" :disabled="inReview || isCheckDeal('status')">
<el-radio v-for="item in this.getDictDatas(DICT_TYPE.BOX_SHIPPING_DCCUSTOMS_STATUS)" :key="item.value" :label="item.value">{{item.label}}</el-radio>
</el-radio-group>
</el-form-item>
......@@ -38,7 +41,7 @@
<!-- 查验 -->
<div v-show="cusDeclarationObj.dcCustomsStatus === '3'">
<el-form-item label="查验">
<el-radio-group v-model="cusDeclarationObj.dcCheckStatus" :disabled="inReview || isCheckDeal">
<el-radio-group v-model="cusDeclarationObj.dcCheckStatus" :disabled="inReview || isCheckDeal('check')">
<el-radio v-for="item in this.getDictDatas(DICT_TYPE.BOX_SHIPPING_CHECK_STATUS)" :key="item.value" :label="item.value" :disabled="disabledRadio(item)">{{item.label}}</el-radio>
</el-radio-group>
</el-form-item>
......@@ -78,8 +81,8 @@
<el-button type="primary" plain @click="canclAudit">{{cusDeclarationObj.dcCheckStatus === '1' ? '取消全部退场审核' : '取消部分退场审核'}}</el-button>
</el-row>
<el-row class="operate-button">
<el-button type="primary" @click="onSubmit(1)" :disabled="isCheckDeal">保存</el-button>
<el-button type="success" v-if="!inReview" @click="onSubmit(2)" :disabled="isCheckDeal">提交</el-button>
<el-button type="primary" @click="onSubmit(1)" :disabled="isCheckDeal('submit')">保存</el-button>
<el-button type="success" v-if="!inReview" @click="onSubmit(2)" :disabled="isCheckDeal('submit')">提交</el-button>
<el-button @click="cancel">关闭</el-button>
<el-button type="primary" @click="extraCost" v-show="cusDeclarationObj.dcCustomsStatus === '2' || cusDeclarationObj.dcCustomsStatus === '3'">额外费用</el-button>
</el-row>
......@@ -156,7 +159,7 @@ import {
downloadFile,
} from "../utils";
import ImageUpload from "@/components/ImageUpload";
import Decimal from 'decimal.js'
import Decimal from "decimal.js";
/**
* 报关
......@@ -218,7 +221,7 @@ export default {
methods: {
getButtonLabel(documentInfo = []) {
const newList = Array.from(new Set(documentInfo));
return newList.length > 2 ? "混合报关" : "VGM声明";
return newList.length >= 2 ? "混合报关" : "VGM声明";
},
submitCustomsCreate(operateType) {
customsCreate({
......@@ -404,7 +407,7 @@ export default {
this.$set(
this.cusDeclarationObj,
"dcVgmWgt",
Decimal.add(dcBoxWgtTmp, dcGoodsWgtTmp)
Decimal.add(dcBoxWgtTmp, dcGoodsWgtTmp).toFixed(2)
);
},
// 审核详情
......@@ -439,6 +442,7 @@ export default {
if (
checkExamineStatus === 2 &&
dcCheckStatus === 2 &&
checkDealStatus === 0 &&
item.value === "1"
) {
return true;
......@@ -491,12 +495,16 @@ export default {
computed: {
/* 获取报关审核退场状态文字 */
getCheckExamineStatus() {
const { checkExamineStatus, customsInfo = {} } = this.shipmentObj;
const {
checkExamineStatus,
checkDealStatus,
customsInfo = {},
} = this.shipmentObj;
const { dcCheckStatus } = customsInfo;
if (checkExamineStatus === 1) {
return dcCheckStatus === 1 ? "退场审核中" : "部分退场审核中";
}
if (checkExamineStatus === 2) {
if (checkExamineStatus === 2 && checkDealStatus === 0) {
return dcCheckStatus === 1
? "审核通过,退场中"
: "审核通过,部分退场中";
......@@ -505,21 +513,57 @@ export default {
},
/* 判断是否已处理 */
isCheckDeal() {
const {
checkExamineStatus,
checkDealStatus,
customsInfo = {},
} = this.shipmentObj;
const { dcCheckStatus } = customsInfo;
// 退场未处理不能操作
if (
checkExamineStatus === 2 &&
dcCheckStatus === 1 &&
checkDealStatus === 0
) {
return true;
}
return false;
return (type) => {
const {
checkExamineStatus,
checkDealStatus,
customsInfo = {},
} = this.shipmentObj;
const { dcCheckStatus } = customsInfo;
// 状态
if (type === "status") {
// 退场/部分退场 审核通过未处理,禁用
if (
checkExamineStatus === 2 &&
[1, 2].includes(dcCheckStatus) &&
checkDealStatus === 0
) {
return true;
}
}
// 查验
if (type === "check") {
// 退场 审核通过未处理,禁用
// 部分退场 审核通过未处理,由 disabledRadio 方法判断
if (
checkExamineStatus === 2 &&
[1].includes(dcCheckStatus) &&
checkDealStatus === 0
) {
return true;
}
}
// 提交/保存
if (type === "submit") {
const { dcCheckStatus: newCheckStatus } = this.cusDeclarationObj;
// 退场/部分退场 审核通过未处理
if (checkExamineStatus === 2 && checkDealStatus === 0) {
// 退场,禁用
if (dcCheckStatus === 1) return true;
// 部分退场
if (dcCheckStatus === 2) {
// 修改为查验后放行,可用,其他禁用
if (newCheckStatus === "3") return false;
return true;
}
}
}
return false;
};
},
},
};
......
......@@ -100,7 +100,7 @@
<p>{{preList.remainWeight}}kg</p>
</div>
<div class="table-button">
<el-button type="success" size="small" @click="addPart">增加</el-button>
<el-button type="success" size="small" @click="addPart" :disabled="isAudit">增加</el-button>
</div>
</el-row>
<el-scrollbar style="height:calc(100% - 43px)">
......@@ -111,8 +111,8 @@
<p>{{getTotlContent(part.secStatistics)}}</p>
</div>
<div class="table-button">
<el-button type="danger" size="small" @click="deletePart(part)">删除部分</el-button>
<el-button type="danger" size="small" @click="deleteOrder('selected', part)">删除订单</el-button>
<el-button type="danger" size="small" @click="deletePart(part)" :disabled="isAudit">删除部分</el-button>
<el-button type="danger" size="small" @click="deleteOrder('selected', part)" :disabled="isAudit">删除订单</el-button>
<el-button type="primary" size="small" @click="foldTable(index, part)">{{part.fold ? '展开' : '收起'}}</el-button>
</div>
</el-row>
......@@ -157,13 +157,13 @@
</el-table-column>
<el-table-column label="操作" align="center" width="160" class-name="small-padding fixed-width" fixed="right">
<template slot-scope="scope">
<el-dropdown trigger="click" @command="(command)=>handleGoods('singele',scope.row,command)">
<el-button type="primary" size="small" icon="el-icon-edit-outline" circle></el-button>
<el-dropdown trigger="click" @command="(command)=>handleGoods('single',scope.row,command)" :disabled="isAudit">
<el-button type="primary" size="small" icon="el-icon-edit-outline" circle :disabled="isAudit"></el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item :command="bPart" v-for="(bPart, index) in preList.sectionGoodList" :key="bPart.id" v-show="bPart.id !== part.id">{{index+1}}部分</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<el-button type="danger" size="small" icon="el-icon-minus" circle style="margin-left:10px;" @click="deleteOrder('row',scope.row)"></el-button>
<el-button type="danger" size="small" icon="el-icon-minus" circle style="margin-left:10px;" @click="deleteOrder('row',scope.row)" :disabled="isAudit"></el-button>
</template>
</el-table-column>
</el-table>
......@@ -220,8 +220,8 @@
</div>
<div class="table-button">
<el-dropdown trigger="click" @command="(command)=>handleGoods('all',item,command)">
<el-button type="success" size="small">预装全部</el-button>
<el-dropdown-menu slot="dropdown">
<el-button type="success" size="small" :disabled="isAudit">预装全部</el-button>
<el-dropdown-menu slot="dropdown" v-if="preList.sectionGoodList">
<el-dropdown-item :command="part" v-for="(part, index) in preList.sectionGoodList" :key="part.id">第{{index+1}}部分</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
......@@ -257,7 +257,7 @@
</el-table-column>
<!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-dropdown trigger="click" @command="(command)=>handleGoods('singele',scope.row,command)">
<el-dropdown trigger="click" @command="(command)=>handleGoods('single',scope.row,command)">
<el-button type="primary" size="small">预装</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item :command="part" v-for="(part, index) in preList" :key="part.id">第{{index+1}}部分</el-dropdown-item>
......@@ -311,6 +311,7 @@ import {
deleteSection,
createGoods,
deleteGoods,
changeSection,
approvalCreate,
approvalCancel,
} from "@/api/ecw/boxSea";
......@@ -494,18 +495,22 @@ export default {
return;
}
if (column.property === "num") {
sums[index] = this.calcSum(column.property, data) ?? 0;
sums[index] = new Decimal(
this.calcSum(column.property, data)
).toNumber();
}
if (column.property === "volumeWeight") {
const volume = this.calcSum("volume", data);
const weight = this.calcSum("weight", data);
let volume = this.calcSum("volume", data);
let weight = this.calcSum("weight", data);
volume = volume === 0 ? volume : new Decimal(volume).toFixed(2);
weight = weight === 0 ? weight : new Decimal(weight).toFixed(2);
sums[index] = getTotlContent({ volume, weight }, [
"volume",
"weight",
]);
sums[index] = sums[index].replace(" ", "\n");
}
});
return sums;
},
/* 计算总和 */
......@@ -515,12 +520,13 @@ export default {
return values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return Decimal.add(prev, curr);
return prev + curr;
} else {
return prev;
}
}, 0);
}
return 0;
},
/* 待预装订单分页 */
pageChange(page) {
......@@ -558,23 +564,32 @@ export default {
},
/** 预装 */
handleGoods(type, item, part) {
let params = {
secId: part.id,
shipmentId: this.shipmentObj.id,
orderId: item.orderId,
};
if (type === "all") {
params.orderItemIdList = item.boxOrderItemList.map(
(data) => data.orderItemId
);
let params = {
secId: part.id,
shipmentId: this.shipmentObj.id,
orderId: item.orderId,
orderItemIdList: item.boxOrderItemList.map(
(data) => data.orderItemId
),
};
createGoods(params).then((res) => {
serviceMsg(res, this).then(() => {
this.queryAllData();
});
});
} else {
params.orderItemIdList = [item.orderItemId];
}
createGoods(params).then((res) => {
serviceMsg(res, this).then(() => {
this.queryAllData();
let params = {
secId: part.id,
id: item.id,
};
changeSection(params).then((res) => {
serviceMsg(res, this).then(() => {
this.queryAllData();
});
});
});
}
},
/* 删除订单 */
deleteOrder(type, data) {
......@@ -735,6 +750,11 @@ export default {
.tobePre-row {
margin-top: 10px;
.el-table {
.cell {
white-space: pre-line;
}
}
}
}
}
......
......@@ -6,8 +6,8 @@
</el-form-item>
</el-form>
<el-row class="operate-button">
<el-button type="success" @click="onSubmit" :disabled="isReview">发起申请</el-button>
<el-button type="primary" @click="jumpReviewDetail" :disabled="!isReview">审核中</el-button>
<el-button type="success" @click="onSubmit" v-show="!isReview">发起申请</el-button>
<el-button type="primary" @click="jumpReviewDetail" v-show="isReview">审核中</el-button>
<el-button @click="cancel">关闭</el-button>
</el-row>
</div>
......
......@@ -46,7 +46,7 @@
</template>
</el-table-column>
<el-table-column label="箱数" align="center" prop="num" />
<el-table-column label="纸箱尺寸" align="center" prop="boxGauge">
<el-table-column label="纸箱尺寸" align="center" prop="warehouseInInfo.boxGauge">
</el-table-column>
<el-table-column label="体积" align="center" prop="volume">
</el-table-column>
......@@ -130,8 +130,14 @@ export default {
let list = [];
res.data.forEach((item) => {
item.orderItemList.forEach((oItem) => {
let warehouseInInfo = {};
if (oItem.warehouseInInfo) {
warehouseInInfo = JSON.parse(oItem.warehouseInInfo ?? {});
}
list.push({
...oItem,
warehouseInInfo,
positionNo: item.positionNo,
tallyStatus: item.tallyStatus,
tallyTime: item.tallyTime,
......
......@@ -329,7 +329,7 @@ export default {
let count = 0;
if (this.pageData.sectionOrderList) {
this.pageData.sectionOrderList.forEach((item) => {
count = Decimal.add(count, item.unloadNum);
count = Decimal.add(count, item.unloadNum).toNumber();
});
}
return count;
......
<template>
<div>
<el-form ref="errorForm" :model="errorObj" label-width="100px">
<el-form-item label="异常">
<el-radio-group v-model="errorObj.exceptionType ">
<el-form ref="errorForm" :model="errorObj" label-width="100px" :rules="rules">
<el-form-item label="异常" prop="exceptionType">
<el-radio-group v-model="errorObj.exceptionType">
<el-radio v-for="item in this.getDictDatas(DICT_TYPE.BOX_SHIPPING_UNLOADING_ERROR)" :key="item.value" :label="item.value">{{item.label}}</el-radio>
</el-radio-group>
</el-form-item>
......@@ -11,7 +11,7 @@
<el-option v-for="(item, index) in goodsList" :key="index" :value="item.orderItemId" :label="item.prodTitleZh"></el-option>
</el-select>
</el-form-item>
<el-form-item label="件数">
<el-form-item label="件数" prop="productNum">
<el-input-number v-model="errorObj.productNum" controls-position="right" :min="1"></el-input-number>
</el-form-item>
<el-form-item label="异常详情">
......@@ -39,6 +39,11 @@ export default {
const { currRow } = this.$attrs;
return {
// 校验
rules: {
exceptionType: [{ required: true, message: "必填", trigger: "change" }],
productNum: [{ required: true, message: "必填", trigger: "change" }],
},
// 异常对象
errorObj: {
productId: currRow.goodsList[0].orderItemId,
......
......@@ -1415,10 +1415,14 @@ function getTotlContent(total, keys = ["num", "volume", "weight"]) {
content.push(`${total?.num ?? 0}`);
}
if (key === "volume") {
content.push(`${total?.volume ?? 0}m³`);
let volume = total?.volume ?? 0;
volume = volume === 0 ? volume : new Decimal(volume).toFixed(2);
content.push(`${volume}m³`);
}
if (key === "weight") {
content.push(`${total?.weight ?? 0}kg`);
let weight = total?.weight ?? 0;
weight = weight === 0 ? weight : new Decimal(weight).toFixed(2);
content.push(`${weight}kg`);
}
}
return content.join(" ");
......@@ -1437,13 +1441,22 @@ function sumStatistics(val) {
const { secStatistics } = item;
if (secStatistics) {
if (!Number.isNaN(Number(secStatistics.num))) {
count.num = Decimal.add(count.num, Number(secStatistics.num));
count.num = Decimal.add(
count.num,
Number(secStatistics.num)
).toNumber();
}
if (!Number.isNaN(Number(secStatistics.volume))) {
count.volume = Decimal.add(count.volume, Number(secStatistics.volume));
count.volume = Decimal.add(
count.volume,
Number(secStatistics.volume)
);
}
if (!Number.isNaN(Number(secStatistics.weight))) {
count.weight = Decimal.add(count.weight, Number(secStatistics.weight));
count.weight = Decimal.add(
count.weight,
Number(secStatistics.weight)
);
}
}
});
......
This diff is collapsed.
This diff is collapsed.
<template>
<div class="app-container">
<div slot="header" class="card-title">开票</div>
<div slot="header" class="card-title">{{ $t('开票') }}</div>
<!-- 搜索工作栏 -->
<el-form
:model="invoiceData"
......@@ -11,10 +11,10 @@
class="card"
>
<el-card class="card">
<el-form-item label="发票号码:" prop="invoiceNumber" :rules="{ required: true, trigger: ['blur'], message: '发票号码不能为空' }">
<el-form-item :label="$t('发票号码')" prop="invoiceNumber" :rules="{ required: true, trigger: ['blur'], message: $t('发票号码不能为空') }">
<el-input v-model="invoiceData.invoiceNumber"></el-input>
</el-form-item>
<el-form-item label="开票类型:" prop="invoicingTypeId" :rules="{ required: true, trigger: ['blur', 'change'], message: '开票类型不能为空' }">
<el-form-item :label="$t('开票类型')" prop="invoicingTypeId" :rules="{ required: true, trigger: ['blur', 'change'], message: $t('开票类型不能为空') }">
<dict-selector
:type="DICT_TYPE.ECW_INVOICING_TYPE"
v-model="invoiceData.invoicingTypeId"
......@@ -22,18 +22,18 @@
</el-form-item>
</el-card>
<el-card class="card">
<div slot="header" class="card-title">开票资料</div>
<div slot="header" class="card-title">{{ $t('开票资料') }}</div>
<el-descriptions title="" direction="vertical" :column="6" border>
<el-descriptions-item label="发票抬头">{{ invoiceData.invoice }}</el-descriptions-item>
<el-descriptions-item label="纳税人识别号">{{ invoiceData.taxpayer }}</el-descriptions-item>
<el-descriptions-item label="地址">{{ invoiceData.addressPhone }}</el-descriptions-item>
<el-descriptions-item label="开户行">{{ invoiceData.accountBank }}</el-descriptions-item>
<el-descriptions-item label="税率%">
<el-descriptions-item :label="$t('发票抬头')">{{ invoiceData.invoice }}</el-descriptions-item>
<el-descriptions-item :label="$t('纳税人识别号')">{{ invoiceData.taxpayer }}</el-descriptions-item>
<el-descriptions-item :label="$t('地址')">{{ invoiceData.addressPhone }}</el-descriptions-item>
<el-descriptions-item :label="$t('开户行')">{{ invoiceData.accountBank }}</el-descriptions-item>
<el-descriptions-item :label="$t('税率%')">
<el-form-item label="">
<el-input v-model="invoiceData.taxRate"></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="项目">
<el-descriptions-item :label="$t('项目')">
<el-form-item label="">
<el-input v-model="invoiceData.projectName"></el-input>
</el-form-item>
......@@ -49,15 +49,15 @@
show-summary
:summary-method="getSummaries"
>
<el-table-column label="订单号" align="center" prop="orderNo" />
<el-table-column label="品名" align="center" prop="titleZh">
<el-table-column :label="$t('订单号')" align="center" prop="orderNo" />
<el-table-column :label="$t('品名')" align="center" prop="titleZh">
<template slot-scope="scope">
{{ scope.row.titleZh || scope.row.titleEn ? scope.row.titleZh + "(" + scope.row.titleEn + ")" : '' }}
</template>
</el-table-column>
<el-table-column label="箱数" align="center" prop="num" />
<el-table-column label="体积/重量" align="center" prop="weight"></el-table-column>
<el-table-column label="收入类型" align="center" prop="feeType">
<el-table-column :label="$t('箱数')" align="center" prop="num" />
<el-table-column :label="$t('体积/重量')" align="center" prop="weight"></el-table-column>
<el-table-column :label="$t('收入类型')" align="center" prop="feeType">
<template slot-scope="scope">
<dict-tag
:type="DICT_TYPE.FEE_TYPE"
......@@ -65,25 +65,25 @@
></dict-tag>
</template>
</el-table-column>
<el-table-column label="单价金额" align="center" prop="unitPrice">
<el-table-column :label="$t('单价金额')" align="center" prop="unitPrice">
<template slot-scope="scope">
<span>{{ scope.row.unitPrice }}</span>
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_PRICE_UNIT" :value="scope.row.currencyId" />
</template>
</el-table-column>
<el-table-column label="总金额" align="center" prop="totalAmount">
<el-table-column :label="$t('总金额')" align="center" prop="totalAmount">
<template slot-scope="scope">
<span>{{ scope.row.totalAmount }}</span>
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_PRICE_UNIT" :value="scope.row.currencyId" />
</template>
</el-table-column>
<el-table-column label="税额" align="center" prop="tax">
<el-table-column :label="$t('税额')" align="center" prop="tax">
<template slot-scope="scope">
<span>{{ scope.row.tax }}</span>
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_PRICE_UNIT" :value="scope.row.currencyId" />
</template>
</el-table-column>
<el-table-column label="价税合计" align="center" prop="taxAndTotalAmount">
<el-table-column :label="$t('价税合计')" align="center" prop="taxAndTotalAmount">
<template slot-scope="scope">
<span>{{ scope.row.taxAndTotalAmount }}</span>
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_PRICE_UNIT" :value="scope.row.currencyId" />
......@@ -92,7 +92,7 @@
</el-table>
</el-card>
<el-descriptions class="card" style="width: 50%">
<el-descriptions-item label="备注">
<el-descriptions-item :label="$t('备注')">
<el-input
v-model="invoiceData.invoicingRemark"
type="text"
......@@ -103,7 +103,7 @@
</el-descriptions>
</el-form>
<div slot="footer" class="card">
<el-button type="primary" @click="submitForm">确定</el-button>
<el-button type="primary" @click="submitForm">{{ $t('确定') }}</el-button>
</div>
</div>
</template>
......@@ -147,7 +147,7 @@ export default {
v.taxAndTotalAmount = NP.plus(v.totalAmount, NP.times(v.totalAmount, this.invoiceData.taxRate/100))
})
const t = {
orderNo: '合计',
orderNo: this.$t('合计'),
totalAmount: res.data.reduce((total, curr) => NP.plus(total, curr.totalAmount), 0),
tax: res.data.reduce((total, curr) => NP.plus(total, curr.tax), 0),
taxAndTotalAmount: res.data.reduce((total, curr) => NP.plus(total, curr.taxAndTotalAmount), 0)
......@@ -160,7 +160,7 @@ export default {
if (valid) {
updateReceiptInvoicing(this.invoiceData).then(res => {
this.open = false;
this.$modal.msgSuccess("操作成功");
this.$modal.msgSuccess(this.$t('操作成功'));
this.$router.back();
})
}
......@@ -168,7 +168,7 @@ export default {
},
getSummaries(param) {
const t = this.list[this.list.length - 1].taxAndTotalAmount
return ['收款人', this.invoiceData.payeeName, '核销人', this.invoiceData.writeOffName, '开票人', this.invoiceData.issuerName, '', '价税合计大写', this.convertCurrency(t)];
return [this.$t('收款人'), this.invoiceData.payeeName, this.$t('核销人'), this.invoiceData.writeOffName, this.$t('开票人'), this.invoiceData.issuerName, '', this.$t('价税合计大写'), this.convertCurrency(t)];
},
convertCurrency(money) {
//汉字的数字
......
This diff is collapsed.
<template>
<div class="app-container">
<el-card>
<div slot="header" class="card-title">付款单详情</div>
<div slot="header" class="card-title">{{ $t('付款单详情') }}</div>
<el-form
ref="form"
:model="form"
......@@ -9,7 +9,7 @@
label-position="left"
>
<el-descriptions :column="3" class="card" border>
<el-descriptions-item label="供应商">
<el-descriptions-item :label="$t('供应商')">
<el-form-item
label=""
label-width="0"
......@@ -19,7 +19,7 @@
<!-- <customer-selector v-model="form.supplierId" @change="consignor = $event" /> -->
<el-select
v-model="form.supplierId"
placeholder="请选择供应商"
:placeholder="$t('请选择供应商')"
disabled
>
<el-option
......@@ -31,7 +31,7 @@
</el-select>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="部门">
<el-descriptions-item :label="$t('部门')">
<el-form-item
label=""
label-width="0"
......@@ -52,7 +52,7 @@
</el-select>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="业务员">
<el-descriptions-item :label="$t('业务员')">
<el-form-item
label=""
label-width="0"
......@@ -69,7 +69,7 @@
</el-select>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="申请日期">
<el-descriptions-item :label="$t('申请日期')">
<el-form-item
label=""
label-width="0"
......@@ -86,7 +86,7 @@
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="供应商银行账号" style="width: 50%">
<el-descriptions-item :label="$t('供应商银行账号')" style="width: 50%">
<el-form-item
label=""
label-width="0"
......@@ -105,7 +105,7 @@
</el-descriptions-item>
</el-descriptions>
<el-descriptions :column="3" class="card" border>
<el-descriptions-item label="最后付款日期">
<el-descriptions-item :label="$t('最后付款日期')">
<el-form-item
label=""
label-width="0"
......@@ -122,7 +122,7 @@
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="结算方式">
<el-descriptions-item :label="$t('结算方式')">
<el-form-item
label=""
label-width="0"
......@@ -139,10 +139,10 @@
</el-form>
</el-card>
<el-card class="card">
<div slot="header" class="card-title">费用信息</div>
<div slot="header" class="card-title">{{ $t('费用信息') }}</div>
<el-table v-loading="loadings" :data="list" border :show-summary="!!list.length" :summary-method="getSummaries">
<el-table-column label="自编号" align="center" prop="payableNo" />
<el-table-column label="费用类型" align="center" prop="feeType">
<el-table-column :label="$t('自编号')" align="center" prop="payableNo" />
<el-table-column :label="$t('费用类型')" align="center" prop="feeType">
<template slot-scope="scope">
<dict-tag
:type="DICT_TYPE.FEE_TYPE"
......@@ -150,16 +150,16 @@
></dict-tag>
</template>
</el-table-column>
<el-table-column label="发票号码" align="center" prop="invoiceNumber" />
<el-table-column label="应付金额" align="center" prop="totalAmount" />
<el-table-column label="币种" align="center" prop="currencyId">
<el-table-column :label="$t('发票号码')" align="center" prop="invoiceNumber" />
<el-table-column :label="$t('应付金额')" align="center" prop="totalAmount" />
<el-table-column :label="$t('币种')" align="center" prop="currencyId">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_PRICE_UNIT" :value="scope.row.currencyId" />
</template>
</el-table-column>
<el-table-column label="汇率" align="center" prop="exchangeRate" />
<el-table-column label="税率%" align="center" prop="taxRate" />
<el-table-column label="价税合计(RMB)" align="center" prop="total" >
<el-table-column :label="$t('汇率')" align="center" prop="exchangeRate" />
<el-table-column :label="$t('税率%')" align="center" prop="taxRate" />
<el-table-column :label="$t('价税合计(RMB)')" align="center" prop="total" >
<template slot-scope="scope">
<span>{{ scope.row.total = ((scope.row.totalAmount * scope.row.exchangeRate) + (scope.row.totalAmount * scope.row.exchangeRate) * (scope.row.taxRate/100)).toFixed(6) }}</span>
</template>
......@@ -174,13 +174,13 @@
style="width: 50%"
>
<el-descriptions :column="1" class="card" border>
<el-descriptions-item label="账单号">
<el-descriptions-item :label="$t('账单号')">
<el-form-item
label=""
label-width="0"
style="margin-bottom: 0"
required
error="账单号不能为空"
:error="$t('账单号不能为空')"
prop="accountNumber"
>
<el-input
......@@ -188,7 +188,7 @@
></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="发票">
<el-descriptions-item :label="$t('发票')">
<el-form-item
label=""
label-width="0"
......@@ -199,8 +199,8 @@
v-model="form.invoiceStatus"
disabled
>
<el-option label="未开票" value="0" />
<el-option label="已开票" value="1" />
<el-option :label="$t('未开票')" value="0" />
<el-option :label="$t('已开票')" value="1" />
</el-select>
</el-form-item>
</el-descriptions-item>
......@@ -209,7 +209,7 @@
</el-card>
<div slot="footer" style="margin: 20px 0">
<!-- <el-button type="primary" @click="submitDraft">保 存</el-button> -->
<el-button type="primary" @click="$store.dispatch('tagsView/delCurrentView')">返回</el-button>
<el-button type="primary" @click="$store.dispatch('tagsView/delCurrentView')">{{ $t('返回') }}</el-button>
</div>
</div>
</template>
......@@ -348,7 +348,7 @@ export default {
const { columns, data } = param;
const sums = new Array(columns.length).map(v => '');
const index = sums.length - 1
sums[index - 1] = '价税合计大写'
sums[index - 1] = this.$t('价税合计大写')
const t = data.map(v => v.total).reduce((prev, curr) => {
return parseFloat(prev) + parseFloat(curr);
}, 0)
......@@ -368,21 +368,21 @@ export default {
if (this.list && this.list.length > 0) {
params.payableReqVOList = [...this.list]
}else{
this.$modal.msgError("请选择供应商未付款项");
this.$modal.msgError(this.$t('请选择供应商未付款项'));
return
}
if(!params.supplierBankAccount){
this.$modal.msgError("请选择供应商银行账号");
this.$modal.msgError(this.$t('请选择供应商银行账号'));
return
}
if (this.id && this.id !== '0') {
updatePayment(params).then(res => {
this.$modal.msgSuccess("修改成功");
this.$modal.msgSuccess(this.$t('修改成功'));
this.$router.back();
})
} else {
createPayment(params).then(res => {
this.$modal.msgSuccess("新增成功");
this.$modal.msgSuccess(this.$t('新增成功'));
this.$router.back();
})
}
......@@ -398,21 +398,21 @@ export default {
if (this.list && this.list.length > 0) {
params.payableReqVOList = [...this.list]
}else{
this.$modal.msgError("请选择供应商未付款项");
this.$modal.msgError(this.$t('请选择供应商未付款项'));
return
}
if(!params.supplierBankAccount){
this.$modal.msgError("请选择供应商银行账号");
this.$modal.msgError(this.$t('请选择供应商银行账号'));
return
}
if (this.id && this.id !== '0') {
updatePayment(params).then(res => {
this.$modal.msgSuccess("修改成功");
this.$modal.msgSuccess(this.$t('修改成功'));
this.$router.back();
})
} else {
createPayment(params).then(res => {
this.$modal.msgSuccess("新增成功");
this.$modal.msgSuccess(this.$t('新增成功'));
this.$router.back();
})
}
......
<template>
<div class="app-container examine-wrap">
<el-card>
<div slot="header" class="card-title">审核请款单</div>
<div slot="header" class="card-title">{{ $t('审核请款单') }}</div>
<el-descriptions :column="3" class="card" border>
<el-descriptions-item label="供应商">
<el-descriptions-item :label="$t('供应商')">
{{ detail.supplierName }}
</el-descriptions-item>
<el-descriptions-item label="部门">
<el-descriptions-item :label="$t('部门')">
{{ findDepartmentName(detail.departmentId) }}
</el-descriptions-item>
<el-descriptions-item label="业务员">
<el-descriptions-item :label="$t('业务员')">
{{ detail.salesmanName }}
</el-descriptions-item>
<el-descriptions-item label="申请日期">
<el-descriptions-item :label="$t('申请日期')">
{{ detail.applicationAt }}
</el-descriptions-item>
<el-descriptions-item label="供应商银行账号" style="width: 50%">
<el-descriptions-item :label="$t('供应商银行账号')" style="width: 50%">
{{ findBank(detail.supplierBankAccount) }}
</el-descriptions-item>
</el-descriptions>
<el-descriptions :column="3" class="card" border>
<el-descriptions-item label="最后付款日期">
<el-descriptions-item :label="$t('最后付款日期')">
{{ detail.latestPayAt }}
</el-descriptions-item>
<el-descriptions-item label="结算方式">
<el-descriptions-item :label="$t('结算方式')">
<!-- {{ detail.settlementType }} -->
<dict-tag :type="DICT_TYPE.CUSTOMER_BALANCE" :value="detail.settlementType"></dict-tag>
</el-descriptions-item>
</el-descriptions>
</el-card>
<el-card class="card">
<div slot="header" class="card-title">费用信息</div>
<div slot="header" class="card-title">{{ $t('费用信息') }}</div>
<el-table v-loading="loadings" :data="list" border :show-summary="!!list.length" :summary-method="getSummaries">
<el-table-column label="自编号" align="center" prop="payableNo" />
<el-table-column label="费用类型" align="center" prop="feeType">
<el-table-column :label="$t('自编号')" align="center" prop="payableNo" />
<el-table-column :label="$t('费用类型')" align="center" prop="feeType">
<template slot-scope="scope">
<dict-tag
:type="DICT_TYPE.FEE_TYPE"
......@@ -41,46 +41,46 @@
></dict-tag>
</template>
</el-table-column>
<el-table-column label="发票号码" align="center" prop="invoiceNumber">
<el-table-column :label="$t('发票号码')" align="center" prop="invoiceNumber">
<!-- <template slot-scope="scope">
<el-input v-model="scope.row.invoiceNumber"></el-input>
</template> -->
</el-table-column>
<el-table-column label="应付金额" align="center" prop="totalAmount" />
<el-table-column label="币种" align="center" prop="currencyId">
<el-table-column :label="$t('应付金额')" align="center" prop="totalAmount" />
<el-table-column :label="$t('币种')" align="center" prop="currencyId">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_PRICE_UNIT" :value="scope.row.currencyId" />
</template>
</el-table-column>
<el-table-column label="汇率" align="center" prop="exchangeRate">
<el-table-column :label="$t('汇率')" align="center" prop="exchangeRate">
<!-- <template slot-scope="scope">
<el-input v-model="scope.row.exchangeRate"></el-input>
</template> -->
</el-table-column>
<el-table-column label="税率" align="center" prop="taxRate" >
<el-table-column :label="$t('税率%')" align="center" prop="taxRate" >
<!-- <template slot-scope="scope">
<el-input v-model="scope.row.taxRate"></el-input>
</template> -->
</el-table-column>
<el-table-column label="价税合计(RMB)" align="center" prop="total" />
<el-table-column :label="$t('价税合计(RMB)')" align="center" prop="total" />
</el-table>
<el-descriptions :column="1" class="card" border>
<el-descriptions-item label="账单号">
<el-descriptions-item :label="$t('账单号')">
{{ detail.accountNumber }}
</el-descriptions-item>
<el-descriptions-item label="发票">
{{ detail.invoiceStatus == 0 ? '未开票' : '已开票' }}
<el-descriptions-item :label="$t('发票')">
{{ detail.invoiceStatus == 0 ? $t('未开票') : $t('已开票') }}
</el-descriptions-item>
<el-descriptions-item label="审核备注">
<el-descriptions-item :label="$t('审核备注')">
<el-input type="textarea" :rows="2" v-model="notes">
</el-input>
</el-descriptions-item>
</el-descriptions>
</el-card>
<div slot="footer" style="margin: 20px 0">
<el-button type="primary" @click="examine('y')">审核通过</el-button>
<el-button type="danger" @click="examine('n')">审核驳回</el-button>
<el-button type="primary" @click="examine('y')">{{ $t('审核通过') }}</el-button>
<el-button type="danger" @click="examine('n')">{{ $t('审核驳回') }}</el-button>
</div>
</div>
</template>
......@@ -150,7 +150,7 @@ export default {
const { columns, data } = param;
const sums = new Array(columns.length).map(v => '');
const index = sums.length - 1
sums[index - 1] = '价税合计大写'
sums[index - 1] = this.$t('价税合计大写')
const t = data.map(v => v.total).reduce((prev, curr) => {
return prev + curr;
}, 0)
......@@ -164,7 +164,7 @@ export default {
verifyStatus: status
}
paymentVerify(params).then(res => {
this.$modal.msgSuccess("操作成功");
this.$modal.msgSuccess(this.$t('操作成功'));
this.$router.back();
})
},
......
This diff is collapsed.
<template>
<div class="app-container" >
<div id="print" style="font-size: 18px;">
<div style="text-align: center;font-weight: bold;font-size: 20px;">付款单</div>
<div style="text-align: center;font-weight: bold;font-size: 20px;">{{ $t('付款单') }}</div>
<div style="margin-top: 20px;">
<div style="display: flex;width: 80%;align-items: center;margin-bottom: 10px;">
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">付款单号:</div><span>{{ form.paymentNo || '' }}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">最后付款日:</div> <span>{{ form.latestPayAt || '' }}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('付款单号') }}</div><span>{{ form.paymentNo || '-' }}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('最后付款日') }}</div> <span>{{ form.latestPayAt || '-' }}</span></div>
</div>
<div style="display: flex;width: 80%;align-items: center;margin-bottom: 10px;">
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">申请日期:</div> <span>{{ form.applicationAt || '' }}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">结算方式:</div><span>{{ form.settlementType || '' }}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('申请日期') }}</div> <span>{{ form.applicationAt || '-' }}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('结算方式') }}</div><span>{{ form.settlementType || '-' }}</span></div>
</div>
<div style="display: flex;width: 80%;align-items: center;margin-bottom: 10px;">
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">付款公司:</div><span>{{ form.supplierName || '' }}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">银行户名:</div><span>{{ findBank(form.supplierBankAccount).baAccountName || '' }}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('付款公司') }}</div><span>{{ form.supplierName || '-' }}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('银行户名') }}</div><span>{{ findBank(form.supplierBankAccount).baAccountName || '-' }}</span></div>
</div>
<div style="display: flex;width: 80%;align-items: center;margin-bottom: 10px;">
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">银行名称:</div><span>{{ findBank(form.supplierBankAccount).baBankName || '' }}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">银行账号:</div><span>{{ findBank(form.supplierBankAccount).baAccountNum || '' }}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('银行名称') }}</div><span>{{ findBank(form.supplierBankAccount).baBankName || '-' }}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('银行账号') }}</div><span>{{ findBank(form.supplierBankAccount).baAccountNum || '-' }}</span></div>
</div>
<!-- <div style="display: flex;width: 80%;align-items: center;margin-bottom: 10px;">
<div style="flex:1"><div style="width: 120px;text-align: right;">水单号:</div><span>{{form?form.accountBank:''}}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;">手续费:</div><span>{{form?form.accountBank:''}}</span></div>
</div> -->
<div style="display: flex;width: 80%;align-items: center;">
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">备注:</div><span>{{ form.notes || '' }}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('备注') }}</div><span>{{ form.notes || '-' }}</span></div>
</div>
</div>
<table border="1" style="margin-top: 20px;width: 100%;text-align: center;border-collapse: collapse;line-height: 2 ">
<tr>
<th style="width: 6%;">序号</th>
<th style="width: 15%;">自编号</th>
<th style="width: 15%;">费用类型</th>
<th style="width: 15%;">币别</th>
<th style="width: 10%;">汇率</th>
<th style="width: 15%;">发票号</th>
<th style="width: 12%;">应付金额</th>
<th style="width: 12%;">申请金额</th>
<th style="width: 6%;">{{ $t('序号') }}</th>
<th style="width: 15%;">{{ $t('自编号') }}</th>
<th style="width: 15%;">{{ $t('费用类型') }}</th>
<th style="width: 15%;">{{ $t('币种') }}</th>
<th style="width: 10%;">{{ $t('汇率') }}</th>
<th style="width: 15%;">{{ $t('发票号') }}</th>
<th style="width: 12%;">{{ $t('应付金额') }}</th>
<th style="width: 12%;">{{ $t('申请金额') }}</th>
</tr>
<tr v-for="(item, index) in list" :key="index">
<td>{{ index + 1 }}</td>
......@@ -56,23 +56,23 @@
<td>{{ item.total }}</td>
</tr>
<tr>
<td colspan="2">合计(大写)</td>
<td colspan="2">{{ $t('合计(大写)') }}</td>
<td colspan="2">{{ convertCurrency(totalMoney()) }}</td>
<td colspan="2">合计付款</td>
<td colspan="2">{{ $t('合计付款') }}</td>
<td>{{ totalMoney() }}</td>
</tr>
</table>
<div style="margin-top: 20px;">
<div style="display: flex;width: 100%;align-items: center;">
<div style="flex:1"><span style="width: 120px;">主管</span></div>
<div style="flex:1"><span style="width: 120px;">会计</span></div>
<div style="flex:1"><span style="width: 120px;">出纳</span></div>
<div style="flex:1"><span style="width: 120px;">经手人</span></div>
<div style="flex:1"><span style="width: 120px;">{{ $t('主管') }}</span></div>
<div style="flex:1"><span style="width: 120px;">{{ $t('会计') }}</span></div>
<div style="flex:1"><span style="width: 120px;">{{ $t('出纳') }}</span></div>
<div style="flex:1"><span style="width: 120px;">{{ $t('经手人') }}</span></div>
</div>
</div>
</div>
<div slot="footer" class="card">
<el-button type="primary" @click="print">确订打印</el-button>
<el-button type="primary" @click="print">{{ $t('确订打印') }}</el-button>
</div>
</div>
</template>
......@@ -169,7 +169,7 @@
console.log('打印哦')
}).catch(err => {
console.error('lodop异常', err)
alert('请检查LODOP打印控件是否安装并启动');
alert(this.$t('请检查LODOP打印控件是否安装并启动'));
})
},
findBank(val) {
......
<template>
<div class="app-container" >
<div id="print" style="font-size: 18px;">
<div style="text-align: center;font-weight: bold;font-size: 20px;">收款单</div>
<div style="text-align: center;font-weight: bold;font-size: 20px;">{{ $t('收款单') }}</div>
<div style="margin-top: 20px;">
<div style="display: flex;width: 80%;align-items: center;margin-bottom: 10px;">
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">部门:</div><span>{{form?form.departmentName:''}}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('部门') }}</div><span>{{form?form.departmentName:'-'}}</span></div>
</div>
<div style="display: flex;width: 80%;align-items: center;margin-bottom: 10px;">
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">收款单号:</div> <span>{{form?form.receiptNo:''}}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">收款日期:</div><span>{{form?form.payedAt:''}}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('收款单号') }}</div> <span>{{form?form.receiptNo:'-'}}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('收款日期') }}</div><span>{{form?form.payedAt:'-'}}</span></div>
</div>
<div style="display: flex;width: 80%;align-items: center;margin-bottom: 10px;">
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">客户名称:</div><span>{{form?form.customerName:''}}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">收款户名:</div><span>{{form?form.payeeName:''}}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('客户名称') }}</div><span>{{form?form.customerName:'-'}}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('收款户名') }}</div><span>{{form?form.payeeName:'-'}}</span></div>
</div>
<div style="display: flex;width: 80%;align-items: center;margin-bottom: 10px;">
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">银行名称:</div><span>{{form?form.accountBank:''}}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">银行账号:</div><span>{{form?form.platformAccount:''}}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('银行名称') }}</div><span>{{form?form.accountBank:'-'}}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('银行账号') }}</div><span>{{form?form.platformAccount:'-'}}</span></div>
</div>
<div style="display: flex;width: 80%;align-items: center;margin-bottom: 10px;">
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">水单号:</div><span>{{form?form.waterBillNo:''}}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">手续费:</div><span>{{form?form.feeRate:''}}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('水单号') }}</div><span>{{form?form.waterBillNo:'-'}}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('手续费') }}</div><span>{{form?form.feeRate:'-'}}</span></div>
</div>
<div style="display: flex;width: 80%;align-items: center;">
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">备注:</div><span>{{form?form.remark:''}}</span></div>
<div style="flex:1"><div style="width: 120px;text-align: right;display:inline-block;">{{ $t('备注') }}</div><span>{{form?form.remark:'-'}}</span></div>
</div>
</div>
<table border="1" style="margin-top: 20px;width: 100%;text-align: center;border-collapse: collapse; ">
<tr>
<th style="width: 8%;">序号</th>
<th style="width: 12%;">订单号</th>
<th style="width: 18%;">收入类型</th>
<th style="width: 22%;">品名</th>
<th style="width: 8%;">汇率</th>
<th style="width: 12%;">总金额</th>
<th style="width: 20%;">实收金额</th>
<th style="width: 8%;">{{ $t('序号') }}</th>
<th style="width: 12%;">{{ $t('订单号') }}</th>
<th style="width: 18%;">{{ $t('收入类型') }}</th>
<th style="width: 22%;">{{ $t('品名') }}</th>
<th style="width: 8%;">{{ $t('汇率') }}</th>
<th style="width: 12%;">{{ $t('总金额') }}</th>
<th style="width: 20%;">{{ $t('实收金额') }}</th>
</tr>
<tr v-for="(item, index) in list" :key="index">
<td>{{ index + 1 }}</td>
......@@ -46,23 +46,23 @@
<td>{{ item.actualAmount }}</td>
</tr>
<tr>
<td colspan="2">合计(大写)</td>
<td colspan="2">{{ $t('合计(大写)') }}</td>
<td colspan="2">{{ convertCurrency(totalMoney()) }}</td>
<td colspan="2">合计实收</td>
<td colspan="2">{{ $t('合计实收') }}</td>
<td>{{ totalMoney() }}</td>
</tr>
</table>
<div style="margin-top: 20px;">
<div style="display: flex;width: 100%;align-items: center;">
<div style="flex:1"><span style="width: 120px;">主管</span></div>
<div style="flex:1"><span style="width: 120px;">会计</span></div>
<div style="flex:1"><span style="width: 120px;">出纳</span></div>
<div style="flex:1"><span style="width: 120px;">经手人</span></div>
<div style="flex:1"><span style="width: 120px;">{{ $t('主管') }}</span></div>
<div style="flex:1"><span style="width: 120px;">{{ $t('会计') }}</span></div>
<div style="flex:1"><span style="width: 120px;">{{ $t('出纳') }}</span></div>
<div style="flex:1"><span style="width: 120px;">{{ $t('经手人') }}</span></div>
</div>
</div>
</div>
<div slot="footer" class="card">
<el-button type="primary" @click="print">确订打印</el-button>
<el-button type="primary" @click="print">{{ $t('确订打印') }}</el-button>
</div>
</div>
</template>
......@@ -156,7 +156,7 @@
console.log('打印哦')
}).catch(err => {
console.error('lodop异常', err)
alert('请检查LODOP打印控件是否安装并启动');
alert(this.$t('请检查LODOP打印控件是否安装并启动'));
})
},
totalMoney() {
......
This diff is collapsed.
<template>
<div class="app-container">
<div slot="header" class="card-title">待收款</div>
<div slot="header" class="card-title">{{ $t('待收款') }}</div>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8" style="margin-right: 60px">
<el-button
......@@ -8,7 +8,7 @@
type="primary"
size="mini"
@click="handleAdd(0)"
>新增收款单</el-button
>{{ $t('新增收款单') }}</el-button
>
<el-button
v-if="showSearch"
......@@ -38,10 +38,10 @@
class="card"
>
<el-row>
<el-form-item label="始发城市:">
<el-form-item :label="$t('始发城市')">
<el-select
v-model="queryParams.departureId"
placeholder="请选择始发城市"
:placeholder="$t('请选择始发城市')"
clearable
>
<el-option
......@@ -52,10 +52,10 @@
></el-option>
</el-select>
</el-form-item>
<el-form-item label="目的城市:">
<el-form-item :label="$t('目的城市')">
<el-select
v-model="queryParams.objectiveId"
placeholder="请选择目的城市"
:placeholder="$t('请选择目的城市')"
clearable
>
<el-option
......@@ -66,7 +66,7 @@
></el-option>
</el-select>
</el-form-item>
<el-form-item label="运输方式:">
<el-form-item :label="$t('运输方式')">
<dict-selector
:type="DICT_TYPE.ECW_TRANSPORT_TYPE"
v-model="queryParams.transportId"
......@@ -74,7 +74,7 @@
clearable
/>
</el-form-item>
<el-form-item label="控货:">
<el-form-item :label="$t('控货')">
<dict-selector
:type="DICT_TYPE.INFRA_BOOLEAN_STRING"
v-model="queryParams.isCargoControl"
......@@ -83,66 +83,66 @@
</el-form-item>
</el-row>
<el-row>
<el-form-item label="订单状态:">
<el-form-item :label="$t('订单状态')">
<dict-selector
:type="DICT_TYPE.ORDER_STATUS"
v-model="queryParams.status"
clearable
/>
</el-form-item>
<el-form-item label="报关方式:">
<el-form-item :label="$t('报关方式')">
<dict-selector
:type="DICT_TYPE.ECW_CUSTOMS_TYPE"
v-model="queryParams.customsType"
clearable
/>
</el-form-item>
<el-form-item label="订单号:">
<el-form-item :label="$t('订单号')">
<el-input
style="max-width: 188px"
v-model="queryParams.orderNo"
placeholder="请输入订单编号"
:placeholder="$t('请输入订单编号')"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="品名:">
<el-form-item :label="$t('品名')">
<el-input
style="max-width: 188px"
v-model="queryParams.title"
placeholder="请输入品名"
:placeholder="$t('请输入品名')"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
</el-row>
<el-row>
<el-form-item label="提单号:">
<el-form-item :label="$t('提单号')">
<el-input
style="max-width: 188px"
v-model="queryParams.tidanNo"
placeholder="请输入提单号"
:placeholder="$t('请输入提单号')"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="唛头:">
<el-form-item :label="$t('唛头')">
<el-input
style="max-width: 188px"
v-model="queryParams.marks"
placeholder="请输入唛头"
:placeholder="$t('请输入唛头')"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="费用类型:">
<el-form-item :label="$t('费用类型')">
<dict-selector
:type="DICT_TYPE.FEE_TYPE"
v-model="queryParams.feeType"
clearable
></dict-selector>
</el-form-item>
<el-form-item label="发货人:">
<el-form-item :label="$t('发货人')">
<customer-selector
v-model="queryParams.consignorNameOrPhone"
@change="consignor = $event"
......@@ -154,7 +154,7 @@
</el-form-item> -->
</el-row>
<el-row>
<el-form-item label="收货人:">
<el-form-item :label="$t('收货人')">
<!-- <el-input style="max-width: 188px;" v-model="queryParams.consigneeNameOrPhone" placeholder="请输入收货人" clearable @keyup.enter.native="handleQuery"/> -->
<customer-selector
v-model="queryParams.consigneeNameOrPhone"
......@@ -162,24 +162,24 @@
clearable
/>
</el-form-item>
<el-form-item label="自编号:">
<el-form-item :label="$t('自编号')">
<el-input
style="max-width: 188px"
v-model="queryParams.selfNo"
placeholder="请输入自编号"
:placeholder="$t('请输入自编号')"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="创建时间:">
<el-form-item :label="$t('创建时间')">
<!-- <dict-selector :type="DICT_TYPE.BEGINTIME_TYPE_ENDTIME" v-model="queryParams.date"></dict-selector> -->
<el-date-picker
v-model="dateType"
type="datetimerange"
range-separator="-"
value-format="yyyy-MM-dd"
start-placeholder="请选择日期"
end-placeholder="请选择日期"
:start-placeholder="$t('请选择日期')"
:end-placeholder="$t('请选择日期')"
>
</el-date-picker>
</el-form-item>
......@@ -194,23 +194,23 @@
</el-form>
</el-card>
<el-table v-loading="loadings" :data="list" border class="card">
<el-table-column label="订单号" align="center" prop="orderNo" />
<el-table-column label="唛头" align="center" prop="marks" />
<el-table-column label="品名" align="center" prop="title">
<el-table-column :label="$t('订单号')" align="center" prop="orderNo" />
<el-table-column :label="$t('唛头')" align="center" prop="marks" />
<el-table-column :label="$t('品名')" align="center" prop="title">
<template slot-scope="scope">
{{ scope.row.titleZh? (scope.row.titleZh + "(" + scope.row.titleEn + ")"):'' }}
</template>
</el-table-column>
<el-table-column label="箱数" align="center" prop="num" />
<el-table-column label="体积/重量" align="center" prop="weight" />
<el-table-column label="发货人" align="center" prop="consignorName" />
<el-table-column label="收货人" align="center" prop="consigneeName" />
<el-table-column label="订单状态" align="center" prop="status">
<el-table-column :label="$t('箱数')" align="center" prop="num" />
<el-table-column :label="$t('体积/重量')" align="center" prop="weight" />
<el-table-column :label="$t('发货人')" align="center" prop="consignorName" />
<el-table-column :label="$t('收货人')" align="center" prop="consigneeName" />
<el-table-column :label="$t('订单状态')" align="center" prop="status">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.ORDER_STATUS" :value="scope.row.status" />
</template>
</el-table-column>
<el-table-column label="收入类型" align="center" prop="feeType">
<el-table-column :label="$t('收入类型')" align="center" prop="feeType">
<template slot-scope="scope">
<dict-tag
:type="DICT_TYPE.FEE_TYPE"
......@@ -218,26 +218,26 @@
></dict-tag>
</template>
</el-table-column>
<el-table-column label="单价" align="center" prop="unitPrice">
<el-table-column :label="$t('单价')" align="center" prop="unitPrice">
<template slot-scope="scope">
<span>{{ scope.row.unitPrice }}</span>
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_PRICE_UNIT" :value="scope.row.currencyId" />
</template>
</el-table-column>
<el-table-column label="总金额" align="center" prop="totalAmount">
<el-table-column :label="$t('总金额')" align="center" prop="totalAmount">
<template slot-scope="scope">
<span>{{ scope.row.totalAmount }}</span>
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_PRICE_UNIT" :value="scope.row.currencyId" />
</template>
</el-table-column>
<el-table-column
label="操作"
:label="$t('操作')"
align="center"
class-name="small-padding fixed-width"
>
<template slot-scope="scope">
<el-button size="mini" type="text" @click="handleAdd(scope.row.id)"
>收款</el-button
>{{ $t('收款') }}</el-button
>
</template>
</el-table-column>
......
This diff is collapsed.
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