Merge pull request 'master-invoice' (#101) from master-invoice into develop

Reviewed-on: http://git.xdadan.loc/tanex/emis-frontend/pulls/101
This commit is contained in:
wuteng 2025-09-19 14:26:21 +08:00
commit eee6d54b67
7 changed files with 258 additions and 30 deletions

View File

@ -795,6 +795,9 @@ export default {
if (j === 'paymentType') {
return this.selectDictLabel(this.dict.type.emis_payment_type,v['paymentType']);
}
if (j === 'feeType') {
return this.selectDictLabel(this.dict.type.emis_commission_fee_type,v['feeType']);
}
return v[j]
}))
},

View File

@ -58,7 +58,11 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="启用状态" prop="enableStatus">
<el-select v-model="queryParams.enableStatus" placeholder="启用状态" clearable>
<el-option v-for="dict in dict.type.customer_invoice_status" :key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
</SearchForm>
@ -159,6 +163,11 @@
<el-table-column :label="$t('公司电话')" align="center" prop="companyTel" min-width="100" />
<el-table-column :label="$t('公司地址')" align="center" prop="companyAddress" min-width="300" :show-overflow-tooltip="true"/>
<!-- <el-table-column :label="$t('开票类型')" align="center" prop="invoiceType" min-width="100" /> -->
<el-table-column :label="$t('启用状态')" align="center" prop="enableStatus" min-width="100" >
<template slot-scope="scope">
<dict-tag :options="dict.type.customer_invoice_status" :value="scope.row.enableStatus"/>
</template>
</el-table-column>
<el-table-column :label="$t('开户行')" align="center" prop="bankName" min-width="150" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('开户账号')" align="center" prop="bankAccNo" min-width="150" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('联系人')" align="center" prop="contact" min-width="100" />
@ -233,8 +242,7 @@ import XLSX from 'xlsx'
export default {
name: "EmisCustomerInvoiceInfo",
components: { elDateSimplePicker,emisCustomerInvoiceInfoForm },
dicts: [
],
dicts: ['customer_invoice_status'],
data() {
return {
resetRefreshId:null,
@ -554,6 +562,9 @@ export default {
}
return statusStr;
}
if(j==='enableStatus'){
return this.selectDictLabel(this.dict.type.customer_invoice_status,v[j]);
}
return v[j]
}))
},

View File

@ -284,6 +284,13 @@ export default {
components: { CustomerInvoiceInfoPicker,SettleBillPicker },
dicts: ['emis_payment_type'],
data() {
var checkerCompany=(rule, value, callback)=> {
if (this.selectCompanyEnableStatus!=1) {
callback(new Error('该开票抬头申请开票被限制,暂缓开票!'));
} else {
callback();
}
}
return {
emisSettleInvoiceRecordOptions: [],
// 遮罩层
@ -305,6 +312,7 @@ export default {
isPreventReClick:false,
// 表单参数
form: {},
selectCompanyEnableStatus:null,
// 表单校验
rules: {
@ -318,8 +326,8 @@ export default {
{ required: true, message: "开票类型不能为空", trigger: ["blur","change"] }
],
companyTaxNo: [
{ required: true, message: "开票税号不能为空", trigger: ["blur","change"] }
],
{ required: true, message: "开票税号不能为空", trigger: ["blur","change"] },
{ validator: checkerCompany, trigger: ['blur', 'change']}]
// remark: [
// { required: true, message: "开票备注不能为空", trigger: "blur" }
// ],
@ -576,7 +584,11 @@ export default {
},
onCustomerInvoiceInSelect(item){
console.log("==>onCustomerInvoiceInSelect==>",item);
this.selectCompanyEnableStatus=item.enableStatus;
// if(item.enableStatus!=1){
// this.$modal.msgError("该开票抬头申请开票被限制,暂缓开票!");
// return;
// }
this.form.companyTaxNo=item.companyTaxNo;
this.form.companyName=item.companyName;
this.form.companyTel=item.companyTel;
@ -659,6 +671,7 @@ export default {
},
invoiceRelList:[],
};
this.selectCompanyEnableStatus=null;
this.resetForm("form");
},
/** 提交按钮 */

View File

@ -326,12 +326,21 @@
<el-table-column :label="$t('体积')" align="center" prop="waybillDetail.totalVolume" min-width="80" />
<el-table-column :label="$t('体积重量')" align="center" prop="waybillDetail.volumeWeight" min-width="80" />
<el-table-column :label="$t('结算重量')" align="center" prop="waybillDetail.settlementWeight" min-width="120" :sortable="true" />
<el-table-column :label="$t('标准报价')" align="center" prop="waybillDetail.realFee" min-width="80" />
<el-table-column :label="$t('运费')" align="center" prop="waybillDetail.freight" min-width="80" >
<template slot-scope="scope">
<span style="color: red;font-weight: 500" v-if="scope.row.waybillDetail.realFee!=scope.row.waybillDetail.freight">{{scope.row.waybillDetail.freight}}</span>
<span v-else>{{scope.row.waybillDetail.freight}}</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column :label="$t('运费差')" align="center" prop="diffFee" min-width="80" >
<template slot-scope="scope">
<span style="color: red;font-weight: 500" v-if="scope.row.waybillDetail.realFee!=scope.row.waybillDetail.freight">
{{scope.row.waybillDetail.freight-scope.row.waybillDetail.realFee}}
</span>
<span v-else>0</span>
</template>
</el-table-column>
<el-table-column :label="$t('收款状态')" align="center" prop="paymentStatus" width="100" >
<template slot-scope="scope">
<el-tag v-if="scope.row.paymentStatus=='0'" type="error">未收款</el-tag>
@ -356,7 +365,6 @@
</template>
</el-table-column>
<el-table-column :label="$t('标准报价')" align="center" prop="waybillDetail.realFee" min-width="80" />
<el-table-column :label="$t('费用备注')" align="center" prop="waybillDetail.feeRemark" min-width="80" :show-overflow-tooltip="true" />
<el-table-column :label="$t('支付类型')" align="center" prop="waybillDetail.paymentType" min-width="80" :show-overflow-tooltip="true" >
<template slot-scope="scope">
@ -1404,9 +1412,42 @@ export default {
}
}
if (j === 'paymentStatus') {
if(v['paymentStatus'] == 0){
return '未收款';
}
else if(v['paymentStatus'] == 1){
return '已收款';
}
else if(v['paymentStatus'] == 2){
return '部分收款';
}
}
if (j === 'openBillStatus') {
if(v['openBillStatus'] == 0){
return '未开票';
}
else if(v['openBillStatus'] == 1){
return '已开票';
}
else if(v['openBillStatus'] == 2){
return '部分开票';
}
else if(v['openBillStatus'] == 3){
return '不开票';
}
else if(v['openBillStatus'] == 4){
return '已完成';
}
}
if (j === 'waybillDetail.blIsQuestion') {
if(v['waybillDetail']['blIsQuestion'] == 1){
return '是';
}else{
return '否';
}
}
if (j === 'waybillDetail.blMessage') {
if(v['waybillDetail']['blMessage'] == 1){
@ -1432,6 +1473,57 @@ export default {
if (j === 'waybillDetail.paymentType') {
return this.selectDictLabel(this.dict.type.emis_payment_type,v['waybillDetail']['paymentType']);
}
if(j === 'diffFee'){
if(v['waybillDetail']['freight'] != v['waybillDetail']['realFee']){
return v['waybillDetail']['freight'] - v['waybillDetail']['realFee'];
}else{
return 0;
}
}
if(j === 'blSpecialQuote'){
if(v['waybillDetail']['blSpecialQuote'] == '0'){
return '否';
}
else if(v['waybillDetail']['blSpecialQuote'] == '1'){
return '是';
}
}
if (j === 'blMerge') {
if(v['blMerge'] == 0){
return '否';
}
else if(v['blMerge'] == 1){
return '是';
}
}
if (j === 'blConfirmCenter') {
if(v['blConfirmCenter'] == 0){
return '未确认';
}
else if(v['blConfirmCenter'] == 1){
return '已确认';
}
else if(v['blConfirmCenter'] == 2){
return '确认不出账';
}
else if(v['blConfirmCenter'] == 3){
return '账单异常';
}
}
if (j === 'blConfirmSite') {
if(v['blConfirmSite'] == 0){
return '未确认';
}
else if(v['blConfirmSite'] == 1){
return '已确认';
}
else if(v['blConfirmSite'] == 2){
return '确认不出账';
}
else if(v['blConfirmSite'] == 3){
return '账单异常';
}
}
return v[j]
}))
},

View File

@ -355,13 +355,21 @@
<el-table-column :label="$t('体积')" align="center" prop="waybillDetail.totalVolume" min-width="80" />
<el-table-column :label="$t('体积重量')" align="center" prop="waybillDetail.volumeWeight" min-width="80" />
<el-table-column :label="$t('结算重量')" align="center" prop="waybillDetail.settlementWeight" min-width="120" :sortable="true" />
<el-table-column :label="$t('标准报价')" align="center" prop="waybillDetail.realFee" min-width="80" />
<el-table-column :label="$t('运费')" align="center" prop="waybillDetail.freight" min-width="80" >
<template slot-scope="scope">
<span style="color: red;font-weight: 500" v-if="scope.row.waybillDetail.realFee!=scope.row.waybillDetail.freight">{{scope.row.waybillDetail.freight}}</span>
<span v-else>{{scope.row.waybillDetail.freight}}</span>
</template>
</el-table-column>
<el-table-column :label="$t('运费差')" align="center" prop="diffFee" min-width="80" >
<template slot-scope="scope">
<span style="color: red;font-weight: 500" v-if="scope.row.waybillDetail.realFee!=scope.row.waybillDetail.freight">
{{scope.row.waybillDetail.freight-scope.row.waybillDetail.realFee}}
</span>
<span v-else>0</span>
</template>
</el-table-column>
<el-table-column :label="$t('收款状态')" align="center" prop="paymentStatus" width="100" >
<template slot-scope="scope">
<el-tag v-if="scope.row.paymentStatus=='0'" type="error">未收款</el-tag>
@ -385,7 +393,6 @@
<el-tag v-if="scope.row.waybillDetail.blSpecialQuote=='1'" type="error">是</el-tag>
</template>
</el-table-column>
<el-table-column :label="$t('标准报价')" align="center" prop="waybillDetail.realFee" min-width="80" />
<el-table-column :label="$t('费用备注')" align="center" prop="waybillDetail.feeRemark" min-width="80" :show-overflow-tooltip="true" />
<el-table-column :label="$t('支付类型')" align="center" prop="waybillDetail.paymentType" min-width="80" :show-overflow-tooltip="true" >
<template slot-scope="scope">
@ -1524,10 +1531,42 @@ export default {
}
}
if (j === 'paymentStatus') {
if(v['paymentStatus'] == 0){
return '未收款';
}
else if(v['paymentStatus'] == 1){
return '已收款';
}
else if(v['paymentStatus'] == 2){
return '部分收款';
}
}
if (j === 'openBillStatus') {
if(v['openBillStatus'] == 0){
return '未开票';
}
else if(v['openBillStatus'] == 1){
return '已开票';
}
else if(v['openBillStatus'] == 2){
return '部分开票';
}
else if(v['openBillStatus'] == 3){
return '不开票';
}
else if(v['openBillStatus'] == 4){
return '已完成';
}
}
if (j === 'waybillDetail.blIsQuestion') {
if(v['waybillDetail']['blIsQuestion'] == 1){
return '是';
}else{
return '否';
}
}
if (j === 'waybillDetail.blMessage') {
if(v['waybillDetail']['blMessage'] == 1){
return '发送';
@ -1540,7 +1579,7 @@ export default {
return '发送';
}else{
return '不发送';
}
}
}
if (j === 'waybillDetail.blSign') {
if(v['waybillDetail']['blSign'] == 1){
@ -1552,6 +1591,57 @@ export default {
if (j === 'waybillDetail.paymentType') {
return this.selectDictLabel(this.dict.type.emis_payment_type,v['waybillDetail']['paymentType']);
}
if(j === 'diffFee'){
if(v['waybillDetail']['freight'] != v['waybillDetail']['realFee']){
return v['waybillDetail']['freight'] - v['waybillDetail']['realFee'];
}else{
return 0;
}
}
if(j === 'blSpecialQuote'){
if(v['waybillDetail']['blSpecialQuote'] == '0'){
return '否';
}
else if(v['waybillDetail']['blSpecialQuote'] == '1'){
return '是';
}
}
if (j === 'blMerge') {
if(v['blMerge'] == 0){
return '否';
}
else if(v['blMerge'] == 1){
return '是';
}
}
if (j === 'blConfirmCenter') {
if(v['blConfirmCenter'] == 0){
return '未确认';
}
else if(v['blConfirmCenter'] == 1){
return '已确认';
}
else if(v['blConfirmCenter'] == 2){
return '确认不出账';
}
else if(v['blConfirmCenter'] == 3){
return '账单异常';
}
}
if (j === 'blConfirmSite') {
if(v['blConfirmSite'] == 0){
return '未确认';
}
else if(v['blConfirmSite'] == 1){
return '已确认';
}
else if(v['blConfirmSite'] == 2){
return '确认不出账';
}
else if(v['blConfirmSite'] == 3){
return '账单异常';
}
}
return v[j]
}))
},

View File

@ -1598,6 +1598,21 @@ export default {
if (j === 'waybillDetail.paymentType') {
return this.selectDictLabel(this.dict.type.emis_payment_type,v['waybillDetail']['paymentType']);
}
if(j === 'diffFee'){
if(v['waybillDetail']['freight'] != v['waybillDetail']['realFee']){
return v['waybillDetail']['freight'] - v['waybillDetail']['realFee'];
}else{
return 0;
}
}
if(j === 'blSpecialQuote'){
if(v['waybillDetail']['blSpecialQuote'] == '0'){
return '否';
}
else if(v['waybillDetail']['blSpecialQuote'] == '1'){
return '是';
}
}
return v[j]
}))
},

View File

@ -1528,9 +1528,9 @@ methods: {
}
}
//企业税号重新赋值
this.form.sender.enterpriseName=this.selectedSenderEnterpriseName;
this.form.sender.enterpriseTaxId=this.selectedSenderEnterpriseTaxId;
this.calcBillFee();
this.form.sender.enterpriseName=this.selectedSenderEnterpriseName;
this.form.sender.enterpriseTaxId=this.selectedSenderEnterpriseTaxId;
this.calcBillFee();
}
},
@ -1705,17 +1705,17 @@ methods: {
this.startTimer();
}
if (['2', '4', '5'].includes(this.form.paymentType)) { //月结
this.selectedMonthUserEnterpriseName = this.form.sender.enterpriseName;
this.selectedMonthUserEnterpriseTaxId = this.form.sender.enterpriseTaxId;
this.selectedSenderEnterpriseName = '';
this.selectedSenderEnterpriseTaxId = '';
} else {
this.selectedMonthUserEnterpriseName = '';
this.selectedMonthUserEnterpriseTaxId = '';
this.selectedSenderEnterpriseName = this.form.sender.enterpriseName;
this.selectedSenderEnterpriseTaxId = this.form.sender.enterpriseTaxId;
}
// if (['2', '4', '5'].includes(this.form.paymentType)) { //月结
// this.selectedMonthUserEnterpriseName = this.form.sender.enterpriseName;
// this.selectedMonthUserEnterpriseTaxId = this.form.sender.enterpriseTaxId;
// this.selectedSenderEnterpriseName = '';
// this.selectedSenderEnterpriseTaxId = '';
// } else {
// this.selectedMonthUserEnterpriseName = '';
// this.selectedMonthUserEnterpriseTaxId = '';
// this.selectedSenderEnterpriseName = this.form.sender.enterpriseName;
// this.selectedSenderEnterpriseTaxId = this.form.sender.enterpriseTaxId;
// }
// });
// 获取企业税号
if(['2', '4', '5'].includes(this.form.paymentType) || this.form.customerType == 2 || this.form.mainUserId){ // 月结单 或者 月结客户现金单 或者 月结客户子账户现金单
@ -1736,6 +1736,8 @@ methods: {
if(res.rows.length > 0){
this.form.sender.enterpriseName = res.rows[0].enterpriseName;
this.form.sender.enterpriseTaxId = res.rows[0].enterpriseTaxId;
this.selectedMonthUserEnterpriseName = this.form.sender.enterpriseName;
this.selectedMonthUserEnterpriseTaxId = this.form.sender.enterpriseTaxId;
}
}else{ // 非月结客户下的非月结单
if (this.form.sender.id) {
@ -1743,6 +1745,8 @@ methods: {
if (res.data) {
this.form.sender.enterpriseName = res.data.enterpriseName;
this.form.sender.enterpriseTaxId = res.data.enterpriseTaxId;
this.selectedSenderEnterpriseName = this.form.sender.enterpriseName;
this.selectedSenderEnterpriseTaxId = this.form.sender.enterpriseTaxId;
}
}
}